<!DOCTYPE html>
<!-- saved from url=(0059)https://blog.csdn.net/piaoranyuji/article/details/128187911 -->
<html lang="zh-CN">
<head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">

    <link href="https://blog.csdn.net/piaoranyuji/article/details/128187911" rel="canonical">

    <meta content="webkit" name="renderer">
    <meta content="webkit" name="force-rendering">
    <meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
    <meta content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport">
    <meta content="{&quot;spm&quot;:&quot;1001.2101&quot;,&quot;extra&quot;:{&quot;titAb&quot;:&quot;control&quot;,&quot;lvab&quot;:&quot;t_old&quot;,&quot;titAb2&quot;:&quot;control&quot;},&quot;pid&quot;:&quot;blog&quot;}" name="report">
    <meta content="always" name="referrer">
    <meta content="no-siteapp" http-equiv="Cache-Control">
    <link href="https://blog.csdn.net/piaoranyuji/article/details/128187911#" media="handheld" rel="alternate">
    <meta content="5a59773ab8077d4a62bf469ab966a63b_1497598848" name="shenma-site-verification">
    <meta content="pc" name="applicable-device">
    <link href="https://g.csdnimg.cn/static/logo/favicon32.ico" rel="shortcut icon" type="image/x-icon">
    <title>MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客</title>
    <script async="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/auto_dup" type="text/javascript"></script>
    <script async="" charset="utf-8" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/apiaccept" type="text/javascript"></script>
    <script async="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/trackad.js.下载" type="text/javascript"></script>
    <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/push.js.下载"></script>
    <script async="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/saved_resource" type="text/javascript"></script>
    <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/hm.js.下载"></script>
    <script id="ttzz" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/push(1).js.下载"></script>
    <script>
      (function(){ 
        var el = document.createElement("script"); 
        el.src = "https://s3a.pstatp.com/toutiao/push.js?1abfa13dfe74d72d41d83c86d240de427e7cac50c51ead53b2e79d40c7952a23ed7716d05b4a0f683a653eab3e214672511de2457e74e99286eb2c33f4428830"; 
        el.id = "ttzz"; 
        var s = document.getElementsByTagName("script")[0]; 
        s.parentNode.insertBefore(el, s);
      })(window)


    </script>
    <meta content="mybatis的foreach标签用法" name="keywords">
    <meta content="{&quot;autorun&quot;:true,&quot;install&quot;:true,&quot;keyword&quot;:&quot;mybatis的foreach标签用法&quot;}" name="csdn-baidu-search">
    <meta content="文章浏览阅读1w次，点赞12次，收藏66次。  在 MyBatis 中，常常会遇到集合类型的参数，虽然我们可以通过 OGNL 表达式来访问集合的某一个元素，但是 OGNL 表达式无法遍历集合。foreach 标签就是专门用来解决这类问题的，foreach 标签可以用来遍历数组、列表和 Map 等集合参数，实现批量操作或一些简单 SQL 操作。  foreach 元素的属性主要有 item，index，open，separator，close，collection。各属性含义如下所示。  集合中元素迭代时的别名，该参数为必选。  在 list 和数组中_mybatis的foreach标签用法" name="description">
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/detail_enter-4cf7875a8c.min.css" rel="stylesheet" type="text/css">
    <script type="application/ld+json">{
        "@context": "https://ziyuan.baidu.com/contexts/cambrian.jsonld",
        "@id": "https://blog.csdn.net/piaoranyuji/article/details/128187911",
        "appid": "1638831770136827",
        "pubDate": "2022-12-05T15:41:10",
        "title": "MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客",
        "upDate": "2022-12-06T14:48:09"
    }</script>
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/skin3-template-762f7595fd.min.css" rel="stylesheet" type="text/css">
    <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/jquery-1.9.1.min.js.下载" type="text/javascript"></script>
    <script type="text/javascript">
        var isCorporate = false;//注释删除enterprise
        var username =  "piaoranyuji";
        var skinImg = "white";
        var blog_address = "https://blog.csdn.net/piaoranyuji";
        var currentUserName = "qq_16425803";
        var isOwner = false;
        var loginUrl = "http://passport.csdn.net/account/login?from=https://blog.csdn.net/piaoranyuji/article/details/128187911";
        var blogUrl = "https://blog.csdn.net/";
        var avatar = "https://profile-avatar.csdnimg.cn/default.jpg!1";
        var articleTitle = "MyBatis foreach 标签常用方法总结";
        var articleDesc = "文章浏览阅读1w次，点赞12次，收藏66次。  在 MyBatis 中，常常会遇到集合类型的参数，虽然我们可以通过 OGNL 表达式来访问集合的某一个元素，但是 OGNL 表达式无法遍历集合。foreach 标签就是专门用来解决这类问题的，foreach 标签可以用来遍历数组、列表和 Map 等集合参数，实现批量操作或一些简单 SQL 操作。  foreach 元素的属性主要有 item，index，open，separator，close，collection。各属性含义如下所示。  集合中元素迭代时的别名，该参数为必选。  在 list 和数组中_mybatis的foreach标签用法";
        var articleTitles = "MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客";
        var nickName = "长安明月";
        var articleDetailUrl = "https://blog.csdn.net/piaoranyuji/article/details/128187911";
        if(window.location.host.split('.').length == 3) {
            blog_address = blogUrl + username;
        }
        var skinStatus = "White";
        var robotModule = "787a84cf30592b885f2733209b20a098";
        var robotModuleJs = "https://cdn-static-devbit.csdn.net/ai100/chat/index.runtime.js";
        var blogStaticHost = "https://csdnimg.cn/release/blogv2/"
        var mallTestStyle = "control"


    </script>
    <meta content="{&quot;type&quot;:&quot;0&quot;,&quot;fixModel&quot;:&quot;1&quot;}" name="toolbar">
    <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/saved_resource(1)" type="text/javascript"></script>
    <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/report.js.下载" type="text/javascript"></script>
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/sandalstrap.min.css" rel="stylesheet" type="text/css">
    <style>
        .MathJax, .MathJax_Message, .MathJax_Preview{
            display: none
        }


    </style>
    <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/ds.js.下载"></script>
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/csdn-toolbar-default.css" rel="stylesheet" type="text/css">
    <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/csdn-notification.js.下载" type="text/javascript"></script>
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/collection-box.css" rel="stylesheet" type="text/css">
    <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/user-login.js.下载" type="text/javascript"></script>
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/user-tooltip.css" rel="stylesheet" type="text/css">
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/user-medal.css" rel="stylesheet" type="text/css">
    <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/html2canvas.min.js.下载" type="text/javascript"></script>
    <style></style>
    <style type="text/css">.hljs-ln{border-collapse:collapse}            .hljs-ln td{padding:0}            .hljs-ln-n{text-align: right;padding-right: 8px;}            .hljs-ln-n:before{content:attr(data-line-number)}</style>
    <style type="text/css">pre{position: relative}pre:hover .code-full-screen{display:none !important;}.code-full-screen{display: none !important;position: absolute;right: 4px;top: 3px;width: 24px !important;height: 24px !important;margin: 4px !important;}pre:hover .hljs-button{display: block}.hljs-button{display: none;position: absolute;right: 4px;top: 4px;font-size: 12px;color: #ffffff;background-color: #9999AA;padding: 2px 8px;margin: 8px;border-radius: 4px;cursor: pointer; box-shadow: 0 2px 4px rgba(0,0,0,0.05), 0 2px 4px rgba(0,0,0,0.05);}.hljs-button:after{content: attr(data-title)}code .hljs-button{margin: 2px 8px;}</style>
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/user-accusation.css" rel="stylesheet" type="text/css">
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/user-ordertip.css" rel="stylesheet" type="text/css">
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/order-payment.css" rel="stylesheet" type="text/css">
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/side-toolbar.css" rel="stylesheet" type="text/css">
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/csdn-footer.css" rel="stylesheet" type="text/css">
    <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/user-login.css" rel="stylesheet" type="text/css">
    <style type="text/css">.MathJax_Hover_Frame {border-radius: .25em; -webkit-border-radius: .25em; -moz-border-radius: .25em; -khtml-border-radius: .25em; box-shadow: 0px 0px 15px #83A; -webkit-box-shadow: 0px 0px 15px #83A; -moz-box-shadow: 0px 0px 15px #83A; -khtml-box-shadow: 0px 0px 15px #83A; border: 1px solid #A6D ! important; display: inline-block; position: absolute}
.MathJax_Menu_Button .MathJax_Hover_Arrow {position: absolute; cursor: pointer; display: inline-block; border: 2px solid #AAA; border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; -khtml-border-radius: 4px; font-family: 'Courier New',Courier; font-size: 9px; color: #F0F0F0}
.MathJax_Menu_Button .MathJax_Hover_Arrow span {display: block; background-color: #AAA; border: 1px solid; border-radius: 3px; line-height: 0; padding: 4px}
.MathJax_Hover_Arrow:hover {color: white!important; border: 2px solid #CCC!important}
.MathJax_Hover_Arrow:hover span {background-color: #CCC!important}


    </style>
    <style type="text/css">#MathJax_About {position: fixed; left: 50%; width: auto; text-align: center; border: 3px outset; padding: 1em 2em; background-color: #DDDDDD; color: black; cursor: default; font-family: message-box; font-size: 120%; font-style: normal; text-indent: 0; text-transform: none; line-height: normal; letter-spacing: normal; word-spacing: normal; word-wrap: normal; white-space: nowrap; float: none; z-index: 201; border-radius: 15px; -webkit-border-radius: 15px; -moz-border-radius: 15px; -khtml-border-radius: 15px; box-shadow: 0px 10px 20px #808080; -webkit-box-shadow: 0px 10px 20px #808080; -moz-box-shadow: 0px 10px 20px #808080; -khtml-box-shadow: 0px 10px 20px #808080; filter: progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color='gray', Positive='true')}
#MathJax_About.MathJax_MousePost {outline: none}
.MathJax_Menu {position: absolute; background-color: white; color: black; width: auto; padding: 2px; border: 1px solid #CCCCCC; margin: 0; cursor: default; font: menu; text-align: left; text-indent: 0; text-transform: none; line-height: normal; letter-spacing: normal; word-spacing: normal; word-wrap: normal; white-space: nowrap; float: none; z-index: 201; box-shadow: 0px 10px 20px #808080; -webkit-box-shadow: 0px 10px 20px #808080; -moz-box-shadow: 0px 10px 20px #808080; -khtml-box-shadow: 0px 10px 20px #808080; filter: progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color='gray', Positive='true')}
.MathJax_MenuItem {padding: 2px 2em; background: transparent}
.MathJax_MenuArrow {position: absolute; right: .5em; padding-top: .25em; color: #666666; font-size: .75em}
.MathJax_MenuActive .MathJax_MenuArrow {color: white}
.MathJax_MenuArrow.RTL {left: .5em; right: auto}
.MathJax_MenuCheck {position: absolute; left: .7em}
.MathJax_MenuCheck.RTL {right: .7em; left: auto}
.MathJax_MenuRadioCheck {position: absolute; left: 1em}
.MathJax_MenuRadioCheck.RTL {right: 1em; left: auto}
.MathJax_MenuLabel {padding: 2px 2em 4px 1.33em; font-style: italic}
.MathJax_MenuRule {border-top: 1px solid #CCCCCC; margin: 4px 1px 0px}
.MathJax_MenuDisabled {color: GrayText}
.MathJax_MenuActive {background-color: Highlight; color: HighlightText}
.MathJax_MenuDisabled:focus, .MathJax_MenuLabel:focus {background-color: #E8E8E8}
.MathJax_ContextMenu:focus {outline: none}
.MathJax_ContextMenu .MathJax_MenuItem:focus {outline: none}
#MathJax_AboutClose {top: .2em; right: .2em}
.MathJax_Menu .MathJax_MenuClose {top: -10px; left: -10px}
.MathJax_MenuClose {position: absolute; cursor: pointer; display: inline-block; border: 2px solid #AAA; border-radius: 18px; -webkit-border-radius: 18px; -moz-border-radius: 18px; -khtml-border-radius: 18px; font-family: 'Courier New',Courier; font-size: 24px; color: #F0F0F0}
.MathJax_MenuClose span {display: block; background-color: #AAA; border: 1.5px solid; border-radius: 18px; -webkit-border-radius: 18px; -moz-border-radius: 18px; -khtml-border-radius: 18px; line-height: 0; padding: 8px 0 6px}
.MathJax_MenuClose:hover {color: white!important; border: 2px solid #CCC!important}
.MathJax_MenuClose:hover span {background-color: #CCC!important}
.MathJax_MenuClose:hover:focus {outline: none}


    </style>
    <style type="text/css">.MathJax_Preview .MJXf-math {color: inherit!important}


    </style>
    <style type="text/css">.MJX_Assistive_MathML {position: absolute!important; top: 0; left: 0; clip: rect(1px, 1px, 1px, 1px); padding: 1px 0 0 0!important; border: 0!important; height: 1px!important; width: 1px!important; overflow: hidden!important; display: block!important; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none}
.MJX_Assistive_MathML.MJX_Assistive_MathML_Block {width: 100%!important}


    </style>
    <style type="text/css">#MathJax_Zoom {position: absolute; background-color: #F0F0F0; overflow: auto; display: block; z-index: 301; padding: .5em; border: 1px solid black; margin: 0; font-weight: normal; font-style: normal; text-align: left; text-indent: 0; text-transform: none; line-height: normal; letter-spacing: normal; word-spacing: normal; word-wrap: normal; white-space: nowrap; float: none; -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; box-shadow: 5px 5px 15px #AAAAAA; -webkit-box-shadow: 5px 5px 15px #AAAAAA; -moz-box-shadow: 5px 5px 15px #AAAAAA; -khtml-box-shadow: 5px 5px 15px #AAAAAA; filter: progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color='gray', Positive='true')}
#MathJax_ZoomOverlay {position: absolute; left: 0; top: 0; z-index: 300; display: inline-block; width: 100%; height: 100%; border: 0; padding: 0; margin: 0; background-color: white; opacity: 0; filter: alpha(opacity=0)}
#MathJax_ZoomFrame {position: relative; display: inline-block; height: 0; width: 0}
#MathJax_ZoomEventTrap {position: absolute; left: 0; top: 0; z-index: 302; display: inline-block; border: 0; padding: 0; margin: 0; background-color: white; opacity: 0; filter: alpha(opacity=0)}


    </style>
    <style type="text/css">.MathJax_Preview {color: #888}
#MathJax_Message {position: fixed; left: 1em; bottom: 1.5em; background-color: #E6E6E6; border: 1px solid #959595; margin: 0px; padding: 2px 8px; z-index: 102; color: black; font-size: 80%; width: auto; white-space: nowrap}
#MathJax_MSIE_Frame {position: absolute; top: 0; left: 0; width: 0px; z-index: 101; border: 0px; margin: 0px; padding: 0px}
.MathJax_Error {color: #CC0000; font-style: italic}


    </style>
    <style type="text/css">.MJXp-script {font-size: .8em}
.MJXp-right {-webkit-transform-origin: right; -moz-transform-origin: right; -ms-transform-origin: right; -o-transform-origin: right; transform-origin: right}
.MJXp-bold {font-weight: bold}
.MJXp-italic {font-style: italic}
.MJXp-scr {font-family: MathJax_Script,'Times New Roman',Times,STIXGeneral,serif}
.MJXp-frak {font-family: MathJax_Fraktur,'Times New Roman',Times,STIXGeneral,serif}
.MJXp-sf {font-family: MathJax_SansSerif,'Times New Roman',Times,STIXGeneral,serif}
.MJXp-cal {font-family: MathJax_Caligraphic,'Times New Roman',Times,STIXGeneral,serif}
.MJXp-mono {font-family: MathJax_Typewriter,'Times New Roman',Times,STIXGeneral,serif}
.MJXp-largeop {font-size: 150%}
.MJXp-largeop.MJXp-int {vertical-align: -.2em}
.MJXp-math {display: inline-block; line-height: 1.2; text-indent: 0; font-family: 'Times New Roman',Times,STIXGeneral,serif; white-space: nowrap; border-collapse: collapse}
.MJXp-display {display: block; text-align: center; margin: 1em 0}
.MJXp-math span {display: inline-block}
.MJXp-box {display: block!important; text-align: center}
.MJXp-box:after {content: " "}
.MJXp-rule {display: block!important; margin-top: .1em}
.MJXp-char {display: block!important}
.MJXp-mo {margin: 0 .15em}
.MJXp-mfrac {margin: 0 .125em; vertical-align: .25em}
.MJXp-denom {display: inline-table!important; width: 100%}
.MJXp-denom > * {display: table-row!important}
.MJXp-surd {vertical-align: top}
.MJXp-surd > * {display: block!important}
.MJXp-script-box > *  {display: table!important; height: 50%}
.MJXp-script-box > * > * {display: table-cell!important; vertical-align: top}
.MJXp-script-box > *:last-child > * {vertical-align: bottom}
.MJXp-script-box > * > * > * {display: block!important}
.MJXp-mphantom {visibility: hidden}
.MJXp-munderover {display: inline-table!important}
.MJXp-over {display: inline-block!important; text-align: center}
.MJXp-over > * {display: block!important}
.MJXp-munderover > * {display: table-row!important}
.MJXp-mtable {vertical-align: .25em; margin: 0 .125em}
.MJXp-mtable > * {display: inline-table!important; vertical-align: middle}
.MJXp-mtr {display: table-row!important}
.MJXp-mtd {display: table-cell!important; text-align: center; padding: .5em 0 0 .5em}
.MJXp-mtr > .MJXp-mtd:first-child {padding-left: 0}
.MJXp-mtr:first-child > .MJXp-mtd {padding-top: 0}
.MJXp-mlabeledtr {display: table-row!important}
.MJXp-mlabeledtr > .MJXp-mtd:first-child {padding-left: 0}
.MJXp-mlabeledtr:first-child > .MJXp-mtd {padding-top: 0}
.MJXp-merror {background-color: #FFFF88; color: #CC0000; border: 1px solid #CC0000; padding: 1px 3px; font-style: normal; font-size: 90%}
.MJXp-scale0 {-webkit-transform: scaleX(.0); -moz-transform: scaleX(.0); -ms-transform: scaleX(.0); -o-transform: scaleX(.0); transform: scaleX(.0)}
.MJXp-scale1 {-webkit-transform: scaleX(.1); -moz-transform: scaleX(.1); -ms-transform: scaleX(.1); -o-transform: scaleX(.1); transform: scaleX(.1)}
.MJXp-scale2 {-webkit-transform: scaleX(.2); -moz-transform: scaleX(.2); -ms-transform: scaleX(.2); -o-transform: scaleX(.2); transform: scaleX(.2)}
.MJXp-scale3 {-webkit-transform: scaleX(.3); -moz-transform: scaleX(.3); -ms-transform: scaleX(.3); -o-transform: scaleX(.3); transform: scaleX(.3)}
.MJXp-scale4 {-webkit-transform: scaleX(.4); -moz-transform: scaleX(.4); -ms-transform: scaleX(.4); -o-transform: scaleX(.4); transform: scaleX(.4)}
.MJXp-scale5 {-webkit-transform: scaleX(.5); -moz-transform: scaleX(.5); -ms-transform: scaleX(.5); -o-transform: scaleX(.5); transform: scaleX(.5)}
.MJXp-scale6 {-webkit-transform: scaleX(.6); -moz-transform: scaleX(.6); -ms-transform: scaleX(.6); -o-transform: scaleX(.6); transform: scaleX(.6)}
.MJXp-scale7 {-webkit-transform: scaleX(.7); -moz-transform: scaleX(.7); -ms-transform: scaleX(.7); -o-transform: scaleX(.7); transform: scaleX(.7)}
.MJXp-scale8 {-webkit-transform: scaleX(.8); -moz-transform: scaleX(.8); -ms-transform: scaleX(.8); -o-transform: scaleX(.8); transform: scaleX(.8)}
.MJXp-scale9 {-webkit-transform: scaleX(.9); -moz-transform: scaleX(.9); -ms-transform: scaleX(.9); -o-transform: scaleX(.9); transform: scaleX(.9)}
.MathJax_PHTML .noError {vertical-align: ; font-size: 90%; text-align: left; color: black; padding: 1px 3px; border: 1px solid}


    </style>
    <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/index.runtime.js.下载"></script>
    <style type="text/css">.logo {
  display: flex;
  align-items: center;
  transition: all 1.5s linear;
}
.logo-left {
  min-width: 40px;
}
.logo-right {
  min-width: 0;
  padding-left: 8px;
  overflow: hidden;
  color: #222226;
}
.logo .sloga {
  font-size: 18px;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #222226;
  line-height: 20px;
}

    </style>
    <style type="text/css">.chat-container {
  --color-text-primary: #222226;
  --color-text-content: #555570;
  --color-text-desc: #999aaa;
  --color-menu-bg: rgba(255, 255, 255, 0.7);
  --color-menu-active-bg: #fafafc;
  --color-input-bg: #fff;
  --color-border: #f7f7fc;
  --color-border-message: #f0f0f5;
  --color-btn-bg: #fff;
  --color-main-bg: #fff;
  --color-sug-bg: #fff;
  --color-sug-active-bg: #f6f7fb;
  --color-message-bg-left: rgba(39, 124, 204, 0.1);
  --color-message-bg-right: #faf6ee;
  --color-mask-text: rgba(0, 0, 0, 0.07);
}

.chat-container.dark {
  --color-text-primary: #e8e8f0;
  --color-text-content: #ccccd8;
  --color-text-desc: #999aaa;
  --color-menu-active-bg: rgba(255, 255, 255, 0.1);
  --color-menu-bg: #30313e;
  --color-input-bg: rgba(255, 255, 255, 0.1);
  --color-border: #494a56;
  --color-border-message: #f0f0f5;
  --color-btn-bg: #494a56;
  --color-main-bg: #242429;
  --color-sug-bg: #30313e;
  --color-sug-active-bg: rgba(255, 255, 255, 0.1);
  --el-overlay-color-lighter: rgba(255, 255, 255, 0.01);
  --color-message-bg-left: #d9ecff;
  --color-message-bg-right: #faf6ee;
  --color-mask-text: rgba(255, 255, 255, 0.06);
}

.chat-container * {
  box-sizing: border-box;
}
.chat-container .em {
  display: inline-block;
  color: #fff;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  text-align: center;
  line-height: 16px;
  font-size: 12px;
  font-style: normal !important;
  background: var(--color-text-content);
  margin-left: 3px;
}
.chat-container img {
  display: block;
}
@media screen and (min-width: 769px) {
  .chat-container .scrollstyle:hover::-webkit-scrollbar-thumb, .chat-container .chat-history .chat-history-list:hover::-webkit-scrollbar-thumb, .chat-history .chat-container .chat-history-list:hover::-webkit-scrollbar-thumb {
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
    background: var(--color-border);
  }
  .chat-container .scrollstyle::-webkit-scrollbar, .chat-container .chat-history .chat-history-list::-webkit-scrollbar, .chat-history .chat-container .chat-history-list::-webkit-scrollbar {
    width: 5px;
    height: 5px;
  }
  .chat-container .scrollstyle::-webkit-scrollbar-thumb, .chat-container .chat-history .chat-history-list::-webkit-scrollbar-thumb, .chat-history .chat-container .chat-history-list::-webkit-scrollbar-thumb {
    border-radius: 10px;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
    background: rgba(0, 0, 0, 0);
  }
  .chat-container .scrollstyle::-webkit-scrollbar-track, .chat-container .chat-history .chat-history-list::-webkit-scrollbar-track, .chat-history .chat-container .chat-history-list::-webkit-scrollbar-track {
    border-radius: 10px;
    background: rgba(0, 0, 0, 0);
  }
}
@media screen and (min-width: 769px) {
  .chat-container .fixheader {
    height: calc(100vh - 126px);
  }
}
@media screen and (max-width: 768px) {
  .chat-container .fixheader {
    min-height: 100vh;
  }
}
.chat-container .relative {
  position: relative;
}
.chat-container .flex {
  display: flex;
}
.chat-container .flex-1 {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}
.chat-container .flex-center {
  display: flex;
  justify-content: center;
  align-items: center;
}
.chat-container .flex-center .list-content {
  min-height: auto !important;
}
.chat-container .line-2 {
  word-break: break-all;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.chat-container .line {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-100 {
    width: 100% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-90 {
    width: 90% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-10 {
    width: 10% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-m-0 {
    margin: 0 !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-m-10 {
    margin: 10px !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-p-20 {
    padding: 20px !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-hide {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  .chat-container .m-show {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-show {
    display: block !important;
  }
}
.chat-container .chat-toast-message {
  position: absolute;
  background: rgba(0, 0, 0, 0.5) !important;
  border: none;
  opacity: 1;
}
.chat-container .chat-toast-message .cm-message__icon,
.chat-container .chat-toast-message .cm-message__content {
  color: #fff;
}
.chat-container .cm-overlay.is-message-box {
  position: absolute;
  background: rgba(0, 0, 0, 0.15);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box {
  position: absolute;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box {
  padding: 24px;
  vertical-align: baseline;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header {
  width: 100%;
  padding: 0;
  font-size: 18px;
  color: var(--color-text-primary);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn {
  position: static;
  height: 20px;
  width: 20px;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn .cm-message-box__close {
  font-size: 20px;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn .cm-message-box__close:hover {
  color: var(--color-text-primary);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__content {
  font-size: 14px;
  padding: 18px 0;
  color: var(--color-text-primary);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button {
  width: 96px;
  height: 32px;
  border-radius: 18px;
  border: 1px solid #e8e8ed;
  color: #555666;
  font-size: 14px;
  background: #fff;
  outline: none;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button:hover {
  border: 1px solid #999aaa;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button.cm-button--primary {
  background: #fc5531;
  border: none;
  color: #fff;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button.cm-button--primary:hover {
  background: #fc1944;
}
.chat-container .reference_title {
  font-size: 16px;
  margin: 24px 0 12px;
  padding-left: 12px;
  position: relative;
  color: var(--color-text-primary);
  padding-top: 0;
}
.chat-container .reference_title::before {
  content: "";
  position: absolute;
  width: 3px;
  height: 1em;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: var(--color-text-content);
}
.chat-container .reference_list {
  display: flex;
  align-items: center;
  column-gap: 20px;
  row-gap: 10px;
  flex-wrap: wrap;
  list-style: none;
  padding-left: 0;
  line-height: 18px;
  list-style: none;
}
.chat-container .reference_list .reference_item {
  list-style: none;
  padding: 4px 20px 4px 32px;
  border-radius: 16px;
  background: #fff;
  max-width: 100%;
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 6px;
  margin: 0;
  overflow: hidden;
  background: #fff url("https://devbit-static.oss-cn-beijing.aliyuncs.com/ai100/chat/imgs/icon-reference-c.png") 2px center/24px no-repeat;
}
.chat-container .reference_list .reference_item .reference_index,
.chat-container .reference_list .reference_item em {
  color: #fff;
  border-radius: 50%;
  display: block;
  width: 16px;
  height: 16px;
  text-align: center;
  line-height: 16px;
  font-size: 12px;
  font-style: normal;
  margin-left: 0;
  background: var(--color-text-content);
}
.chat-container .reference_list .reference_item .reference_index + em,
.chat-container .reference_list .reference_item em + em {
  margin-left: -3px;
}
.chat-container .reference_list .reference_item a {
  display: block;
  font-size: 13px;
  width: 100%;
  height: 100%;
  color: var(--color-text-content);
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-decoration: none;
}
.chat-container .reference_list .reference_item a:hover {
  color: var(--color-text-primary);
}

.chat-history {
  flex: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  position: relative;
}
.chat-history.isFold {
  pointer-events: none;
}
.chat-history.isFold .chat-no-data,
.chat-history.isFold .chat-history-item,
.chat-history.isFold .chat-history-clear {
  opacity: 0;
}
.chat-history.isFold::before, .chat-history.isFold::after {
  content: "";
  height: 1px;
  width: calc(100% - 16px);
  background: var(--color-border);
  position: absolute;
  left: 8px;
}
.chat-history::before, .chat-history::after {
  content: "";
  height: 1px;
  position: absolute;
  background: var(--color-border);
  width: calc(100% - 48px);
  left: 24px;
}
.chat-history::before {
  top: 0;
}
.chat-history::after {
  bottom: 0;
}
.chat-history .chat-history-list {
  flex: 1;
  overflow-y: auto;
}
.chat-history .chat-no-data,
.chat-history .chat-history-item,
.chat-history .chat-history-clear {
  padding: 8px 7px;
  color: var(--color-text-desc);
  opacity: 1;
  display: flex;
  align-items: center;
  cursor: pointer;
  margin: 8px 0;
  transition: opacity 0.3s;
}
.chat-history .chat-no-data i,
.chat-history .chat-history-item i,
.chat-history .chat-history-clear i {
  margin-right: 10px;
}
.chat-history .chat-no-data {
  position: absolute;
  bottom: 0;
  left: 48px;
  font-size: 12px;
}
.chat-history .chat-history-item {
  overflow: hidden;
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--color-text-primary);
  border-radius: 8px;
  margin: 8px 24px;
  font-size: 14px;
}
.chat-history .chat-history-item img {
  width: 18px;
  height: 18px;
  margin-right: 8px;
}
.chat-history .chat-history-item:hover {
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.08), 0px 1px 6px 0px rgba(0, 0, 0, 0.05);
}
.chat-history .chat-history-item:hover .icon-delete {
  opacity: 1;
}
.chat-history .chat-history-item .chat-history-message {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chat-history .chat-history-item .icon-delete {
  opacity: 0;
  margin: 0;
  margin-left: 3px;
  width: 18px;
  height: 18px;
}
.chat-history .chat-history-item .icon-delete img.active {
  display: none;
}
.chat-history .chat-history-item .icon-delete:hover {
  background: var(--color-border);
  border-radius: 2px;
}
.chat-history .chat-history-item .icon-delete:hover img {
  display: none;
}
.chat-history .chat-history-item .icon-delete:hover img.active {
  display: block;
}
.chat-history .chat-history-clear {
  margin-left: 25px;
  margin-top: 0;
  font-size: 12px;
  white-space: nowrap;
}
.chat-history .chat-history-clear img {
  width: 16px;
  height: 16px;
  margin-right: 9px;
}

@keyframes bg-move {
  0% {
    background: linear-gradient(to top, #dd88ff, #6d5ffd);
  }
  12% {
    background: linear-gradient(to right top, #dd88ff, #6d5ffd);
  }
  24% {
    background: linear-gradient(to right, #dd88ff, #6d5ffd);
  }
  36% {
    background: linear-gradient(to right bottom, #dd88ff, #6d5ffd);
  }
  48% {
    background: linear-gradient(to bottom, #dd88ff, #6d5ffd);
  }
  60% {
    background: linear-gradient(to left bottom, #dd88ff, #6d5ffd);
  }
  72% {
    background: linear-gradient(to left, #dd88ff, #6d5ffd);
  }
  84% {
    background: linear-gradient(to left top, #dd88ff, #6d5ffd);
  }
  100% {
    background: linear-gradient(to top, #dd88ff, #6d5ffd);
  }
}
.new-chat-btn {
  width: 182px;
  height: 36px;
  border-radius: 8px;
  margin: 8px auto 24px;
  font-size: 14px;
  color: var(--color-text-primary);
  cursor: pointer;
  background: linear-gradient(to right, #dd88ff, #6d5ffd);
  animation: bg-move 3s linear infinite;
  position: relative;
  transition: width 0.3s;
  transform-origin: left;
}
.new-chat-btn:hover {
  animation: bg-move 1s linear infinite;
}
.new-chat-btn.isFold {
  width: 36px;
}
.new-chat-btn.isFold .new-chat-btn-content {
  padding: 0 8px;
}
.new-chat-btn.isFold .new-chat-btn-content i {
  margin-right: 0;
}
.new-chat-btn.isFold .new-chat-btn-content .new-chat-btn-text {
  opacity: 0;
}
.new-chat-btn .new-chat-btn-content {
  position: absolute;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  left: 1px;
  top: 1px;
  background: #fff;
  border-radius: 7px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 0 7px;
  transition: all 0.3s;
}
.new-chat-btn .new-chat-btn-content .new-chat-btn-text {
  white-space: nowrap;
  opacity: 1;
  transition: opacity 0.3s;
}
.new-chat-btn i {
  margin-right: 8px;
  transition: margin-right 0.3s;
}

    </style>
    <style type="text/css">.c-chat-tabs_inner {
  height: 40px;
  overflow: hidden;
  position: relative;
}
.c-chat-tabs_inner-transition {
  width: 153px;
  height: 40px;
  position: absolute;
  bottom: 0;
  transition: left 0.2s;
  z-index: 1;
}
.c-chat-tabs_inner-transition .tab-img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  height: 100%;
  background-size: 153px 40px;
  background-size: 100%;
  background-image: url("https://cdn-static-devbit.csdn.net/ai100/chat/imgs/tab-item-bg.png");
  background-repeat: no-repeat;
  background-position: 0 0;
}
.c-chat-tabs_inner-tab-bg {
  background-color: #f5f6f7;
  z-index: 0;
}
.c-chat-tabs_inner-tab {
  z-index: 2;
}
.c-chat-tabs_inner-tab-bg, .c-chat-tabs_inner-tab {
  position: absolute;
  width: 100%;
  height: 24px;
  left: 0;
  bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.c-chat-tabs_inner-tab-bg_item, .c-chat-tabs_inner-tab_item {
  user-select: none;
  cursor: pointer;
  font-size: 12px;
  font-weight: 400;
  color: #999aaa;
  flex: 1;
  text-align: center;
}
.c-chat-tabs_inner-tab-bg_item.active, .c-chat-tabs_inner-tab_item.active {
  font-weight: 500;
  color: #222226;
}
.c-chat-tabs_inner-subtab {
  margin: 14px 0;
  position: relative;
}
.c-chat-tabs_inner-subtab::after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  bottom: -14px;
  transform: translateX(-50%);
  width: calc(100% - 48px);
  height: 1px;
  background: #f7f7fc;
}
.c-chat-tabs_inner-subtab_item {
  padding: 0 24px;
  transition: padding 0.3s;
  height: 40px;
  position: relative;
}
.c-chat-tabs_inner-subtab_item.active::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 3px;
  height: 24px;
  background: #6d5ffd;
  border-radius: 0px 3px 3px 0px;
}
.c-chat-tabs_inner-subtab_item-wrap {
  display: flex;
  cursor: pointer;
  align-items: center;
  height: 100%;
}
.c-chat-tabs_inner-subtab_item-wrap:hover {
  background: #ffffff;
  box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.05);
  border-radius: 8px;
}
.c-chat-tabs_inner-subtab_item-wrap span {
  font-size: 14px;
  color: rgb(34, 34, 38);
  margin-left: 6px;
}
.c-chat-tabs_inner-subtab_item-wrap img {
  width: 22px;
  margin: 0 4px;
  margin-right: 6px;
}

    </style>
    <style type="text/css">.chat-aside {
  flex: 0 0 auto;
  width: 230px;
  background: var(--color-menu-bg);
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 10;
  transition: width 0.3s;
}
.chat-aside.isFold {
  width: 64px;
}
.chat-aside.isFold .title {
  padding: 16px;
}
.chat-aside.isFold .title #logo-model,
.chat-aside.isFold .title img {
  width: 40px;
  height: 40px;
}
.chat-aside.isFold .title span {
  opacity: 0;
  height: 0;
  margin: 0;
}
.chat-aside .menu-fold {
  position: absolute;
  top: 50%;
  right: -14px;
  width: 14px;
  height: 110px;
  transform: translateY(-50%);
  cursor: pointer;
}
.chat-aside .menu-fold:hover .icon {
  display: none;
}
.chat-aside .menu-fold:hover .text {
  display: block;
}
.chat-aside .menu-fold img {
  display: block;
  width: 100%;
  height: 100%;
}
.chat-aside .menu-fold img.text {
  display: none;
}
.chat-aside .title {
  font-size: 16px;
  padding: 24px 10px 16px 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--color-text-primary);
  overflow: hidden;
  transition: all 0.3s;
  position: relative;
}
.chat-aside .title #logo-model,
.chat-aside .title img {
  width: 64px;
  height: 64px;
  background: transparent;
  transition: all 0.3s;
  filter: saturate(1.1) brightness(1.1);
  cursor: pointer;
}
.chat-aside .title #logo-model:hover,
.chat-aside .title img:hover {
  filter: saturate(1.2) brightness(1.2);
}
.chat-aside .title span {
  white-space: nowrap;
  opacity: 1;
  height: 24px;
  transition: all 0.3s;
  margin-top: 12px;
}
.chat-aside .cm-menu {
  background: transparent;
  border: none;
  position: relative;
  margin: 14px 0;
}
.chat-aside .cm-menu.isFold .cm-menu-item {
  padding: 0 18px;
}
.chat-aside .cm-menu.isFold .cm-menu-item.foldShow {
  opacity: 1;
  height: 32px;
  margin-top: 24px;
}
.chat-aside .cm-menu.isFold .cm-menu-item .cm-menu-title {
  opacity: 0;
}
.chat-aside .cm-menu .cm-menu-item {
  font-size: 14px;
  padding: 8px 24px;
  line-height: 24px;
  background: transparent !important;
  color: var(--color-text-primary) !important;
  position: relative;
  display: flex;
  align-items: center;
  transition: padding 0.3s;
}
.chat-aside .cm-menu .cm-menu-item.foldShow {
  display: none;
  opacity: 0;
  height: 0;
  transition: all 0.3s;
}
.chat-aside .cm-menu .cm-menu-item:hover {
  background: var(--color-menu-active-bg) !important;
}
.chat-aside .cm-menu .cm-menu-item.active::before {
  display: block;
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 3px;
  height: 24px;
  background: #6d5ffd;
  border-radius: 0px 3px 3px 0px;
}
.chat-aside .cm-menu .cm-menu-item img {
  margin: 0 6px;
  width: 20px;
}
.chat-aside .cm-menu .cm-menu-item img.settings {
  width: 22px;
  margin: 0 4px;
  margin-right: 6px;
}
.chat-aside .cm-menu .cm-menu-item .cm-menu-title {
  opacity: 1;
  transition: opacity 0.3s;
}
.chat-aside .cm-menu .cm-menu-item .icon-arrow {
  position: absolute;
  right: 10px;
}

    </style>
    <style type="text/css">.mask[data-v-81eb5b6c] {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  user-select: none;
  pointer-events: none;
  overflow: hidden;
}

.username_mask_cover[data-v-81eb5b6c] {
  width: 100%;
  height: 100%;
  background-position: 0 0;
  transform: rotate(-24deg);
}
@media screen and (max-width: 768px) {
  .username_mask_cover[data-v-81eb5b6c] {
    width: 160%;
    left: -120px;
  }
}

    </style>
    <style type="text/css">.dot-box {
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
}
.dot-box .box-title {
  margin-bottom: 16px;
  color: #222226;
  line-height: 24px;
  font-size: 16px;
}
.dot-box .expand {
  position: absolute;
  top: 22px;
  right: 24px;
  z-index: 2;
  cursor: pointer;
}
.dot-box .expand span {
  font-size: 14px;
  color: #555666;
  line-height: 16px;
}
.dot-box .expand i {
  font-size: 12px;
}
.dot-box .flex {
  width: 100%;
  padding-left: 2px;
}
.dot-box .cm-tree {
  background: none;
}

.csdn-tree {
  height: 352px;
}
.csdn-tree .root-img {
  height: 28px;
  width: 28px;
}
.csdn-tree .root-font {
  font-size: 14px;
  line-height: 28px;
  font-weight: 500;
  max-width: 500px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.csdn-tree .children-img {
  height: 23px;
  width: 23px;
}
.csdn-tree .children-font {
  color: #585d6c;
  font-size: 14px;
  line-height: 24px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-decoration: none;
  width: calc(100% - 11px);
}
.csdn-tree .mr-4 {
  margin-right: 4px;
}
.csdn-tree img {
  image-rendering: -webkit-optimize-contrast; /* Webkit (non-standard naming) */
}
.csdn-tree .ml-32 {
  padding-left: 32px;
}
.csdn-tree .cm-tree-node__expand-icon {
  width: 0;
  height: 0;
  margin: 0 5px 0 10px;
  position: relative;
  background: url("//cdn-static-devbit.csdn.net/ai100/chat/imgs/plus.png");
  background-size: 100% 100%;
}
.csdn-tree .expanded {
  background: url("//cdn-static-devbit.csdn.net/ai100/chat/imgs/reduct.png");
  background-size: 100% 100%;
}
.csdn-tree .is-leaf {
  margin: 0;
  background-image: none;
  background-size: 100% 100%;
}
.csdn-tree .cm-tree-node__children {
  cursor: pointer;
}
.csdn-tree .cm-tree-node__content:hover {
  background: none;
}
.csdn-tree .cm-tree-node__content {
  height: 44px;
}

.tree-line {
  width: 100%;
  height: 100%;
  display: flex;
  overflow: auto;
  background: none;
}
.tree-line .cm-tree-node {
  flex: 0 0 auto;
  width: 200px;
  height: 352px;
  position: relative;
  border-radius: 2px;
  margin-right: 16px;
}
.tree-line .cm-tree-node__children {
  padding-left: 16px;
  overflow: inherit;
  background: #fff;
}
.tree-line .cm-tree-node__children .cm-tree-node {
  width: 184px;
  height: 44px;
}
.tree-line .cm-tree-node__children .cm-tree-node .children-font {
  padding-left: 11px;
}
.tree-line .cm-tree-node::before {
  content: "";
  height: 42px;
  width: 1px;
  position: absolute;
  left: -1px;
  top: -12px;
  border-width: 1px;
  border-left: 1px dashed #52627c;
}
.tree-line .cm-tree-node:last-child::before {
  height: 32px;
}
.tree-line .cm-tree-node::after {
  content: "";
  width: 20px;
  height: 20px;
  position: absolute;
  left: 2px;
  top: 21px;
  border-width: 1px;
  border-top: 1px dashed #52627c;
}
.tree-line > .cm-tree-node {
  color: #222226;
  background: #fff;
  overflow-y: auto;
  overflow-x: hidden;
}
.tree-line > .cm-tree-node > .cm-tree-node__content {
  background: #fafafc;
}
.tree-line > .cm-tree-node::after {
  border-top: none;
}
.tree-line > .cm-tree-node::before {
  left: 15px;
  top: 32px;
  height: 12px;
}
.tree-line .cm-tree-node__expand-icon.expanded {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

.scroll .cm-tree-node > .cm-tree-node__children {
  overflow: visible !important;
}

    </style>
    <style type="text/css">@charset "UTF-8";
pre code.hljs {
  display: block;
  overflow-x: auto;
  padding: 1em;
}

code.hljs {
  padding: 3px 5px;
}

.hljs {
  color: #383a42;
  background: #fafafa;
}

.hljs-comment,
.hljs-quote {
  color: #a0a1a7;
  font-style: italic;
}

.hljs-doctag,
.hljs-formula,
.hljs-keyword {
  color: #a626a4;
}

.hljs-deletion,
.hljs-name,
.hljs-section,
.hljs-selector-tag,
.hljs-subst {
  color: #e45649;
}

.hljs-literal {
  color: #0184bb;
}

.hljs-addition,
.hljs-attribute,
.hljs-meta .hljs-string,
.hljs-regexp,
.hljs-string {
  color: #50a14f;
}

.hljs-attr,
.hljs-number,
.hljs-selector-attr,
.hljs-selector-class,
.hljs-selector-pseudo,
.hljs-template-variable,
.hljs-type,
.hljs-variable {
  color: #986801;
}

.hljs-bullet,
.hljs-link,
.hljs-meta,
.hljs-selector-id,
.hljs-symbol,
.hljs-title {
  color: #4078f2;
}

.hljs-built_in,
.hljs-class .hljs-title,
.hljs-title.class_ {
  color: #c18401;
}

.hljs-emphasis {
  font-style: italic;
}

.hljs-strong {
  font-weight: 700;
}

.hljs-link {
  text-decoration: underline;
}

.md {
  box-sizing: border-box;
}
.md :first-child {
  margin-top: 0;
}
.md body {
  font-size: 15px;
  color: #333;
  background: #fff;
  font-family: Helvetica, Arial, "PingFang SC", "Microsoft YaHei", "WenQuanYi Micro Hei", "tohoma,sans-serif";
  margin: 0;
  padding: 10%;
}
.md h1 {
  font-size: 2.2em;
  font-weight: 700;
  line-height: 1.1;
  padding-top: 16px;
  margin-bottom: 4px;
}
.md h2,
.md h3,
.md h4,
.md h5,
.md h6 {
  line-height: 1.5em;
  margin-top: 2.2em;
  margin-bottom: 4px;
}
.md h2 {
  font-size: 1.4em;
  margin: 40px 10px 20px 0;
  padding-left: 9px;
  border-left: 6px solid #ff7e79;
  font-weight: 700;
  line-height: 1.4;
}
.md h3 {
  font-weight: 700;
  font-size: 1.2em;
  line-height: 1.4;
  margin: 10px 0 5px;
  padding-top: 10px;
}
.md h4 {
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1.1em;
  line-height: 1.4;
  margin: 10px 0 5px;
  padding-top: 10px;
}
.md h5,
.md h6 {
  font-size: 0.9em;
}
.md h5 {
  font-weight: bold;
  text-transform: uppercase;
}
.md h6 {
  font-weight: normal;
  color: #aaa;
}
.md img {
  width: 50%;
  border-radius: 5px;
  display: block;
  margin-bottom: 15px;
  height: auto;
}
.md dl,
.md ol,
.md ul {
  margin-top: 12px;
  margin-bottom: 20px;
  padding-left: 16px;
  line-height: 1.8;
}
.md p {
  margin: 0 0 20px;
  padding: 0;
  line-height: 1.8;
}
.md a {
  color: #f22f27;
  text-decoration: none;
}
.md a:hover {
  color: #f55852;
  text-decoration: underline;
}
.md a:focus {
  outline-offset: -2px;
}
.md blockquote {
  font-size: 1em;
  font-style: normal;
  padding: 30px 38px;
  margin: 0 0 15px;
  position: relative;
  line-height: 1.8;
  text-indent: 0;
  border: none;
  color: #888;
}
.md blockquote:before {
  content: "“";
  left: 12px;
  top: 0;
  color: #e0e0e0;
  font-size: 4em;
  font-family: Arial, serif;
  line-height: 1em;
  font-weight: 700;
  position: absolute;
}
.md blockquote:after {
  content: "”";
  right: 12px;
  bottom: -26px;
  color: #e0e0e0;
  font-size: 4em;
  font-family: Arial, serif;
  line-height: 1em;
  font-weight: 700;
  position: absolute;
  bottom: -31px;
}
.md strong,
.md dfn {
  font-weight: 700;
}
.md em,
.md dfn {
  font-style: italic;
  font-weight: 400;
}
.md del {
  text-decoration: line-through;
}
.md table {
  border-collapse: collapse;
  display: table;
  width: 100%;
  text-align: left;
  margin-bottom: 24px;
  margin-left: auto;
  margin-right: auto;
}
.md table tr {
  border: 0;
  border-top: 1px solid #ddd;
  background-color: #fff;
}
.md table tr:nth-child(2n) {
  background-color: #f7f7f7;
}
.md table tr th {
  font-weight: 700;
  background-color: #eff3f5;
  padding: 8px;
  border: 1px solid #ddd;
}
.md table tr th p {
  font-weight: 700;
}
.md table tr td {
  padding: 8px;
  border: 1px solid #ddd;
}
.md pre {
  margin: 0 0 10px;
  line-height: 1.42857;
  word-break: break-all;
  word-wrap: break-word;
  border-radius: 4px;
  white-space: pre-wrap;
  display: block;
  background: #ccc;
  padding: 10px 20px;
  border: none;
  margin-bottom: 16px;
  color: #666;
  min-height: 40px;
  font-family: Courier, sans-serif;
}
@media screen and (max-width: 768px) {
  .md pre {
    padding-top: 24px;
  }
}
.md code {
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 4px;
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
  padding: 2px 4px;
  font-size: 90%;
}
.md p > code {
  background-color: #f9f2f4;
  font-size: 0.95em;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}
.md pre > code {
  background: none;
}
.md figure {
  margin: 1em 0;
}
.md figcaption {
  font-size: 0.75em;
  padding: 0.5em 2em;
  margin-bottom: 2em;
}
.md figure img {
  margin-bottom: 0px;
}
.md hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eee;
}
.md ol p,
.md ul p {
  margin-bottom: 0px;
}
.md li {
  margin-bottom: 0.75em;
  margin-top: 0.75em;
}
.md ol#footnotes {
  font-size: 0.95em;
  padding-top: 1em;
  margin-top: 1em;
  margin-left: 0;
  border-top: 1px solid #eaeaea;
  counter-reset: footer-counter;
  list-style: none;
  color: #555;
  padding-left: 5%;
  margin: 20px 0;
}
.md ol#footnotes li {
  margin-bottom: 10px;
  margin-left: 16px;
  font-weight: 400;
  line-height: 2;
  list-style-type: none;
}
.md ol#footnotes li:before {
  content: counter(footer-counter) ". ";
  counter-increment: footer-counter;
  font-weight: 800;
  font-size: 0.95em;
}
@keyframes highfade {
  0% {
    background-color: none;
  }
  20% {
    background-color: yellow;
  }
  100% {
    background-color: none;
  }
}
@-webkit-keyframes highfade {
  0% {
    background-color: none;
  }
  20% {
    background-color: yellow;
  }
  100% {
    background-color: none;
  }
}
.md a:target,
.md ol#footnotes li:target,
.md sup a:target {
  animation-name: highfade;
  animation-duration: 2s;
  animation-iteration-count: 1;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: highfade;
  -webkit-animation-duration: 2s;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in-out;
}
.md a:target {
  border: 0;
  outline: 0;
}

.md_doc_content .hljs {
  overflow: inherit !important;
}

.md_doc_content.md {
  box-sizing: border-box;
}
.md_doc_content.md p {
  margin: 0;
  white-space: pre-line;
  word-break: break-all;
  line-height: 22px;
  font-size: 14px;
}
.md_doc_content.md p + p {
  margin-top: 10px;
}
.md_doc_content.md pre {
  background: #fafafc;
}
.md_doc_content.md ol > li,
.md_doc_content.md ul > li {
  font-size: 14px !important;
  list-style: auto !important;
}
.md_doc_content.md > div > ol > li {
  list-style: decimal !important;
}
.md_doc_content.md > div > ul > li {
  list-style: outside !important;
}
.md_doc_content.md ol ul,
.md_doc_content.md ol ul > li,
.md_doc_content.md ul ul,
.md_doc_content.md ul ul li {
  list-style-type: circle !important;
}

.md_code_container {
  position: relative;
  font-size: 0;
}
.md_code_container code {
  display: block;
  font-size: 14px !important;
  overflow-y: auto;
}
.md_code_container code::-webkit-scrollbar {
  width: 0;
}

.md_code_container .chat-btn {
  position: absolute;
  top: 12px;
  right: 14px;
  white-space: initial;
}
.md_code_container .chat_copy_btn {
  position: relative;
  display: inline-block;
  font-size: 14px;
  width: 18px;
  height: 18px;
  padding: 0;
  cursor: pointer;
  background: url(https://cdn-static-devbit.csdn.net/ai100/chat/imgs/icon-copy.png);
  background-size: contain;
}
.md_code_container .chat_copy_btn.disabled {
  opacity: 0.2;
}
.md_code_container .chat_copy_btn.disabled:hover::before {
  display: none;
}
.md_code_container .chat_copy_btn:before {
  display: none;
  content: "复制";
  position: absolute;
  right: -20px;
  top: 20px;
  width: 30px;
  padding: 4px 8px;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.6);
  border-radius: 5px;
}
.md_code_container .chat_copy_btn:hover::before {
  display: block;
}
.md_code_container .chat_run_btn {
  margin-right: 10px;
  display: inline-block;
  font-size: 14px;
  width: 18px;
  height: 18px;
  padding: 0;
  cursor: pointer;
  background: url(https://cdn-static-devbit.csdn.net/ai100/chat/imgs/icon-run.png);
  background-size: contain;
}
.md_code_container .chat_run_btn.disabled {
  opacity: 0.2;
}
.md_code_container .chat_run_btn.disabled:hover::before {
  display: none;
}
.md_code_container .chat_run_btn:before {
  display: none;
  content: "Run on InsCode";
  position: absolute;
  right: -20px;
  top: 20px;
  width: 120px;
  padding: 4px 8px;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.6);
  border-radius: 5px;
  z-index: 99;
}
.md_code_container .chat_run_btn:hover::before {
  display: block;
}

    </style>
    <style type="text/css">@charset "UTF-8";
.feed-back[data-v-f3173f62] {
  height: 28px;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 4px;
  border: 1px solid rgba(0, 0, 0, 0.07);
  padding: 0 12px;
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  color: #e7e9eb;
  column-gap: 8px;
  margin-top: 16px;
}
.feed-back[data-v-f3173f62] img[data-v-f3173f62] {
  width: 16px;
  height: 16px;
  cursor: pointer;
}
.feed-back[data-v-f3173f62] .cm-icon[data-v-f3173f62] {
  cursor: pointer;
  position: relative;
  color: var(--color-text-primary);
  font-size: 16px;
}
.feed-back[data-v-f3173f62] .cm-icon[data-v-f3173f62][data-v-f3173f62]:last-child {
  width: unset;
}
.feed-back[data-v-f3173f62] .cm-icon[data-v-f3173f62] .btn-text[data-v-f3173f62] {
  display: none;
  font-size: 12px;
  white-space: nowrap;
  font-family: "微软雅黑";
  font-style: normal;
}

    </style>
    <style type="text/css">.questions {
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  font-size: 14px;
  font-weight: 400;
  overflow: hidden;
}
.questions .qs-left {
  display: flex;
  align-items: center;
  height: 30px;
  margin-right: 10px;
}
.questions .qs-left img {
  display: inline;
}
.questions .qs-left span {
  margin-left: 10px;
  font-size: 14px;
  color: #222226;
  line-height: 20px;
}
.questions .q {
  max-width: 100%;
  display: inline-block;
  margin-right: 10px;
  margin-bottom: 10px;
}
.questions .q:last-child {
  margin-right: 0;
}
.questions .q div {
  background: rgba(39, 124, 204, 0.1);
  border-radius: 14px;
  opacity: 0.8;
  border: 1px solid #f0f0f5;
  cursor: pointer;
  line-height: 20px;
  padding: 4px 16px;
  border-radius: 14px;
}

    </style>
    <style type="text/css">.chat-container {
  --color-text-primary: #222226;
  --color-text-content: #555570;
  --color-text-desc: #999aaa;
  --color-menu-bg: rgba(255, 255, 255, 0.7);
  --color-menu-active-bg: #fafafc;
  --color-input-bg: #fff;
  --color-border: #f7f7fc;
  --color-border-message: #f0f0f5;
  --color-btn-bg: #fff;
  --color-main-bg: #fff;
  --color-sug-bg: #fff;
  --color-sug-active-bg: #f6f7fb;
  --color-message-bg-left: rgba(39, 124, 204, 0.1);
  --color-message-bg-right: #faf6ee;
  --color-mask-text: rgba(0, 0, 0, 0.07);
}

.chat-container.dark {
  --color-text-primary: #e8e8f0;
  --color-text-content: #ccccd8;
  --color-text-desc: #999aaa;
  --color-menu-active-bg: rgba(255, 255, 255, 0.1);
  --color-menu-bg: #30313e;
  --color-input-bg: rgba(255, 255, 255, 0.1);
  --color-border: #494a56;
  --color-border-message: #f0f0f5;
  --color-btn-bg: #494a56;
  --color-main-bg: #242429;
  --color-sug-bg: #30313e;
  --color-sug-active-bg: rgba(255, 255, 255, 0.1);
  --el-overlay-color-lighter: rgba(255, 255, 255, 0.01);
  --color-message-bg-left: #d9ecff;
  --color-message-bg-right: #faf6ee;
  --color-mask-text: rgba(255, 255, 255, 0.06);
}

.chat-container * {
  box-sizing: border-box;
}
.chat-container .em {
  display: inline-block;
  color: #fff;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  text-align: center;
  line-height: 16px;
  font-size: 12px;
  font-style: normal !important;
  background: var(--color-text-content);
  margin-left: 3px;
}
.chat-container img {
  display: block;
}
@media screen and (min-width: 769px) {
  .chat-container .scrollstyle:hover::-webkit-scrollbar-thumb, .chat-container #chat-model-com .chat-box .message-input .cm-textarea .cm-textarea__inner:hover::-webkit-scrollbar-thumb, #chat-model-com .chat-box .message-input .cm-textarea .chat-container .cm-textarea__inner:hover::-webkit-scrollbar-thumb, .chat-container #chat-model-com .chat-box .record-list:hover::-webkit-scrollbar-thumb, #chat-model-com .chat-box .chat-container .record-list:hover::-webkit-scrollbar-thumb {
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
    background: var(--color-border);
  }
  .chat-container .scrollstyle::-webkit-scrollbar, .chat-container #chat-model-com .chat-box .message-input .cm-textarea .cm-textarea__inner::-webkit-scrollbar, #chat-model-com .chat-box .message-input .cm-textarea .chat-container .cm-textarea__inner::-webkit-scrollbar, .chat-container #chat-model-com .chat-box .record-list::-webkit-scrollbar, #chat-model-com .chat-box .chat-container .record-list::-webkit-scrollbar {
    width: 5px;
    height: 5px;
  }
  .chat-container .scrollstyle::-webkit-scrollbar-thumb, .chat-container #chat-model-com .chat-box .message-input .cm-textarea .cm-textarea__inner::-webkit-scrollbar-thumb, #chat-model-com .chat-box .message-input .cm-textarea .chat-container .cm-textarea__inner::-webkit-scrollbar-thumb, .chat-container #chat-model-com .chat-box .record-list::-webkit-scrollbar-thumb, #chat-model-com .chat-box .chat-container .record-list::-webkit-scrollbar-thumb {
    border-radius: 10px;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
    background: rgba(0, 0, 0, 0);
  }
  .chat-container .scrollstyle::-webkit-scrollbar-track, .chat-container #chat-model-com .chat-box .message-input .cm-textarea .cm-textarea__inner::-webkit-scrollbar-track, #chat-model-com .chat-box .message-input .cm-textarea .chat-container .cm-textarea__inner::-webkit-scrollbar-track, .chat-container #chat-model-com .chat-box .record-list::-webkit-scrollbar-track, #chat-model-com .chat-box .chat-container .record-list::-webkit-scrollbar-track {
    border-radius: 10px;
    background: rgba(0, 0, 0, 0);
  }
}
@media screen and (min-width: 769px) {
  .chat-container .fixheader {
    height: calc(100vh - 126px);
  }
}
@media screen and (max-width: 768px) {
  .chat-container .fixheader {
    min-height: 100vh;
  }
}
.chat-container .relative {
  position: relative;
}
.chat-container .flex {
  display: flex;
}
.chat-container .flex-1 {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}
.chat-container .flex-center {
  display: flex;
  justify-content: center;
  align-items: center;
}
.chat-container .flex-center .list-content {
  min-height: auto !important;
}
.chat-container .line-2 {
  word-break: break-all;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.chat-container .line {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-100 {
    width: 100% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-90 {
    width: 90% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-10 {
    width: 10% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-m-0 {
    margin: 0 !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-m-10 {
    margin: 10px !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-p-20 {
    padding: 20px !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-hide {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  .chat-container .m-show {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-show {
    display: block !important;
  }
}
.chat-container .chat-toast-message {
  position: absolute;
  background: rgba(0, 0, 0, 0.5) !important;
  border: none;
  opacity: 1;
}
.chat-container .chat-toast-message .cm-message__icon,
.chat-container .chat-toast-message .cm-message__content {
  color: #fff;
}
.chat-container .cm-overlay.is-message-box {
  position: absolute;
  background: rgba(0, 0, 0, 0.15);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box {
  position: absolute;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box {
  padding: 24px;
  vertical-align: baseline;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header {
  width: 100%;
  padding: 0;
  font-size: 18px;
  color: var(--color-text-primary);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn {
  position: static;
  height: 20px;
  width: 20px;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn .cm-message-box__close {
  font-size: 20px;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn .cm-message-box__close:hover {
  color: var(--color-text-primary);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__content {
  font-size: 14px;
  padding: 18px 0;
  color: var(--color-text-primary);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button {
  width: 96px;
  height: 32px;
  border-radius: 18px;
  border: 1px solid #e8e8ed;
  color: #555666;
  font-size: 14px;
  background: #fff;
  outline: none;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button:hover {
  border: 1px solid #999aaa;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button.cm-button--primary {
  background: #fc5531;
  border: none;
  color: #fff;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button.cm-button--primary:hover {
  background: #fc1944;
}
.chat-container .reference_title {
  font-size: 16px;
  margin: 24px 0 12px;
  padding-left: 12px;
  position: relative;
  color: var(--color-text-primary);
  padding-top: 0;
}
.chat-container .reference_title::before {
  content: "";
  position: absolute;
  width: 3px;
  height: 1em;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: var(--color-text-content);
}
.chat-container .reference_list {
  display: flex;
  align-items: center;
  column-gap: 20px;
  row-gap: 10px;
  flex-wrap: wrap;
  list-style: none;
  padding-left: 0;
  line-height: 18px;
  list-style: none;
}
.chat-container .reference_list .reference_item {
  list-style: none;
  padding: 4px 20px 4px 32px;
  border-radius: 16px;
  background: #fff;
  max-width: 100%;
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 6px;
  margin: 0;
  overflow: hidden;
  background: #fff url("https://devbit-static.oss-cn-beijing.aliyuncs.com/ai100/chat/imgs/icon-reference-c.png") 2px center/24px no-repeat;
}
.chat-container .reference_list .reference_item .reference_index,
.chat-container .reference_list .reference_item em {
  color: #fff;
  border-radius: 50%;
  display: block;
  width: 16px;
  height: 16px;
  text-align: center;
  line-height: 16px;
  font-size: 12px;
  font-style: normal;
  margin-left: 0;
  background: var(--color-text-content);
}
.chat-container .reference_list .reference_item .reference_index + em,
.chat-container .reference_list .reference_item em + em {
  margin-left: -3px;
}
.chat-container .reference_list .reference_item a {
  display: block;
  font-size: 13px;
  width: 100%;
  height: 100%;
  color: var(--color-text-content);
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-decoration: none;
}
.chat-container .reference_list .reference_item a:hover {
  color: var(--color-text-primary);
}

#chat-model-com {
  flex: 1;
  display: flex;
  justify-content: space-between;
  width: 100%;
  height: 100%;
}
#chat-model-com .chat-box {
  min-width: 0;
  flex: 1;
  position: relative;
  box-shadow: 0px 1px 0px 0px #f0f0f2;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  #chat-model-com .chat-box {
    padding-left: 20px;
    padding-right: 20px;
    padding: 32px 20px 84px;
  }
}
#chat-model-com .chat-box .record-list {
  list-style: none;
  margin: 0;
  overflow-y: auto;
  height: 100%;
  flex: 1;
}
#chat-model-com .chat-box .record-list .list-content {
  justify-content: flex-start;
}
@media screen and (max-width: 768px) {
  #chat-model-com .chat-box .record-list {
    padding: 0;
  }
}
#chat-model-com .chat-box .record-list .record-item {
  width: 100%;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}
#chat-model-com .chat-box .record-list .record-item .avatar {
  width: 44px;
  border-radius: 4px;
  border: 1px solid var(--color-border-message);
  box-sizing: border-box;
  background: #fff;
}
@media screen and (max-width: 768px) {
  #chat-model-com .chat-box .record-list .record-item .avatar {
    border-radius: 50%;
  }
}
#chat-model-com .chat-box .record-list .record-item .avatar img {
  width: 42px;
  height: 42px;
  display: block;
}
#chat-model-com .chat-box .record-list .record-item .text {
  border-radius: 4px;
  opacity: 0.8;
  position: relative;
  max-width: calc(100% - 56px);
  word-break: break-all;
}
#chat-model-com .chat-box .record-list .record-item .text .msg {
  width: 100%;
  overflow: auto;
}
#chat-model-com .chat-box .record-list .record-item .text::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  top: 15px;
  border: 1px solid #f0f0f5;
}
#chat-model-com .chat-box .record-list .record-item .text p {
  margin: 0;
  white-space: pre-line;
  line-height: 22px;
}
#chat-model-com .chat-box .record-list .record-item .text p + p, #chat-model-com .chat-box .record-list .record-item .text p + pre {
  margin-top: 8px;
}
#chat-model-com .chat-box .record-list .record-item .text .icon-loading {
  width: 20px;
  height: 20px;
  vertical-align: middle;
}
#chat-model-com .chat-box .record-list .record-item.left .text, #chat-model-com .chat-box .record-list .record-item.right .text {
  margin-left: 12px;
}
#chat-model-com .chat-box .record-list .record-item.left .text::before, #chat-model-com .chat-box .record-list .record-item.right .text::before {
  left: -12px;
  border-right: 6px solid var(--color-message-bg-left);
  border-top: 6px solid transparent;
  border-left: 6px solid transparent;
  border-bottom: 6px solid transparent;
}
#chat-model-com .chat-box .record-list .record-item.left .text {
  padding-bottom: 38px;
}
#chat-model-com .chat-box .record-list .record-item.left .text .msg {
  min-width: 0;
  border: 1px solid var(--color-border-message);
  padding: 10px 20px;
  background: var(--color-message-bg-left);
}
#chat-model-com .chat-box .record-list .record-item.right {
  flex-direction: row-reverse;
}
#chat-model-com .chat-box .record-list .record-item.right .text {
  justify-content: flex-end;
  margin-right: 12px;
}
#chat-model-com .chat-box .record-list .record-item.right .text .msg {
  min-width: 0;
  background: var(--color-message-bg-right);
  opacity: 0.8;
  padding: 10px 20px;
  border: 1px solid var(--color-border-message);
}
#chat-model-com .chat-box .record-list .record-item.right .text::before {
  left: unset;
  right: -12px;
  border-left: 6px solid var(--color-message-bg-right);
  border-top: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid transparent;
}
#chat-model-com .chat-box .record-list .record-item + .record-item {
  margin-top: 34px;
}
#chat-model-com .chat-box .list-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 24px 32px;
  min-height: 100%;
}
#chat-model-com .chat-box .list-content .logo-model-icon {
  margin-top: -80px;
  text-align: center;
  color: #606266;
}
#chat-model-com .chat-box .list-content .logo-model-icon #logo-model-mobile {
  width: 88px;
  height: 88px;
  margin-bottom: 20px;
}
#chat-model-com .chat-box .list-content .logo-model-icon #logo-model-mobile + span {
  display: block;
  text-align: center;
}
#chat-model-com .chat-box .list-content .logo {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  font-weight: 500;
  transition: margin-top 0.3s;
  position: relative;
  color: var(--color-text-primary);
}
#chat-model-com .chat-box .list-content .logo .logo-c {
  color: #fc5531;
  width: 12px;
  height: 14px;
  margin-right: 1px;
}
#chat-model-com .chat-box .list-content .logo img {
  width: 32px;
  height: 32px;
  margin-right: 4px;
}
#chat-model-com .chat-box .list-content .logo .icon-beta {
  right: -30px;
  top: 4px;
  background: none;
  border: none;
  width: 28px;
  height: 12px;
  position: absolute;
}
#chat-model-com .chat-box .list-content .desc {
  font-size: 14px;
  margin-top: 14px;
  margin-bottom: 28px;
  max-width: 68%;
  color: #555570;
}
@media screen and (max-width: 768px) {
  #chat-model-com .chat-box .list-content .desc {
    max-width: 86%;
  }
}
#chat-model-com .chat-box .list-content .desc p {
  word-break: break-all;
}
#chat-model-com .chat-box .list-content .desc ul {
  padding-left: 18px;
  margin: 10px 0;
}
#chat-model-com .chat-box .list-content .desc ul li {
  list-style: decimal;
  margin: 4px 0;
}
#chat-model-com .chat-box .list-content .login-message-button {
  color: var(--color-text-content);
  padding: 8px 42px;
  border-radius: 20px;
  border: 1px solid var(--color-text-desc);
  text-decoration: none;
  margin: 2px 0;
  display: block;
}
#chat-model-com .chat-box .list-content .login-message-button:hover {
  border: 1px solid var(--color-text-content);
}
#chat-model-com .chat-box .list-content .vip-button {
  cursor: pointer;
  display: inline-block;
  margin-left: 24px;
  width: 240px;
  height: 32px;
}
#chat-model-com .chat-box .list-content .vip-button .action-button {
  display: block;
  width: 100%;
  height: 100%;
  background: #444555;
  color: #f8e3c3;
  border-radius: 32px;
  text-align: center;
  line-height: 32px;
  text-decoration: none;
}
#chat-model-com .chat-box .list-content .vip-button .action-button:hover {
  opacity: 0.8;
}
#chat-model-com .chat-box .list-content .vip-button.center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#chat-model-com .chat-box .list-content .vip-button {
  margin-left: 0;
  margin-top: 8px;
}
#chat-model-com .chat-box .input-container {
  width: 100%;
  padding: 32px 88px 24px 88px;
  z-index: 2;
  box-sizing: border-box;
  position: relative;
}
@media screen and (max-width: 768px) {
  #chat-model-com .chat-box .input-container {
    position: fixed;
    width: 100%;
    bottom: 0;
    left: 0;
    border-radius: 5px 5px 0 0;
    background: #fff;
    z-index: 99;
    padding: 32px 16px 14px;
  }
}
#chat-model-com .chat-box .input-container .controlBtn {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  font-size: 12px;
  color: var(--color-text-content);
  border: 1px solid var(--color-border);
  padding: 2px 8px;
  border-radius: 4px;
  background: #fff;
  cursor: pointer;
}
#chat-model-com .chat-box .input-container .controlBtn:hover {
  color: var(--color-text-primary);
}
@media screen and (max-width: 768px) {
  #chat-model-com .chat-box .input-container .controlBtn {
    top: 5px;
  }
}
#chat-model-com .chat-box .input-container .popper-container {
  position: relative;
  width: 100%;
  height: 0;
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug {
  padding: 0;
  width: 100%;
  box-sizing: border-box;
  left: 0 !important;
  bottom: 14px !important;
  transform: none !important;
  position: absolute !important;
  background: transparent;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.05);
  z-index: 10;
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .cm-popper__arrow {
  position: absolute;
  left: 50%;
  bottom: -6px;
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .cm-popper__arrow::before {
  border: 1px solid var(--color-border);
  background: var(--color-sug-bg);
}
@media screen and (max-width: 768px) {
  #chat-model-com .chat-box .input-container .popper-container .chat-sug {
    bottom: 24px !important;
  }
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .sug-box {
  color: var(--color-text-content);
  padding: 10px 0;
  width: 100%;
  z-index: 1;
  position: relative;
  overflow: hidden;
  background: var(--color-sug-bg);
  border-radius: 8px;
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .sug-box img {
  width: 16px;
  vertical-align: -3px;
  margin-left: 4px;
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .sug-box .sug-header {
  height: 32px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 14px;
  padding: 0 14px;
  margin-bottom: 4px;
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .sug-box .sug-header .title {
  color: #fc5531;
  flex: 1;
  overflow: hidden;
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .sug-box .sug-header .cm-icon-close {
  cursor: pointer;
  color: #fc5531;
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .sug-box .sug-header .change {
  cursor: pointer;
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .sug-box p {
  padding: 14px;
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .sug-box .sug-list .sug-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 32px;
  padding: 4px 0;
  padding: 0 14px;
  cursor: pointer;
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .sug-box .sug-list .sug-item:hover, #chat-model-com .chat-box .input-container .popper-container .chat-sug .sug-box .sug-list .sug-item.active {
  background: var(--color-sug-active-bg);
}
#chat-model-com .chat-box .input-container .popper-container .chat-sug .sug-box .sug-list .sug-item span {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#chat-model-com .chat-box .message-input-waitsend {
  width: 100%;
  margin: 0 auto;
  height: 50px;
  background: linear-gradient(141deg, #E2B1FF 0%, #6E60FD 100%);
  border-radius: 25px;
  text-align: center;
  font-size: 16px;
  color: #fff;
  line-height: 50px;
  cursor: pointer;
}
#chat-model-com .chat-box .message-input-wait-collapse {
  cursor: pointer;
  display: flex;
  align-items: center;
  position: absolute;
  bottom: 20px;
  right: 28px;
  padding: 4px;
  color: #666666;
}
#chat-model-com .chat-box .message-input-wait-collapse span {
  font-size: 12px;
  font-weight: 400;
  color: #666666;
  line-height: 17px;
}
#chat-model-com .chat-box .message-input-wait-collapse i {
  font-size: 12px;
}
#chat-model-com .chat-box .message-input {
  width: 100%;
  margin: 0 auto;
  padding: 14px 24px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  border-radius: 8px;
  position: relative;
  z-index: 11;
  background: var(--color-input-bg);
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.05);
}
#chat-model-com .chat-box .message-input .message-input-placeholder {
  position: absolute;
  left: 16px;
  top: 0;
  z-index: 12;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  font-size: 13px;
  color: var(--color-text-desc);
  pointer-events: none;
}
#chat-model-com .chat-box .message-input .message-input-placeholder kbd {
  border: 1px solid var(--color-border-message);
  padding: 0px 8px;
  border-radius: 4px;
  margin: 2px 4px;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  #chat-model-com .chat-box .message-input {
    box-shadow: none;
    background: #e8e8f0;
    line-height: 34px;
    margin-top: 0px;
    flex: 1;
    padding: 6px 12px;
  }
  #chat-model-com .chat-box .message-input div.cm-textarea {
    min-height: 20px;
  }
  #chat-model-com .chat-box .message-input div.cm-textarea textarea.cm-textarea__inner {
    font-size: 12px;
  }
}
#chat-model-com .chat-box .message-input .cm-textarea {
  height: 100%;
}
#chat-model-com .chat-box .message-input .cm-textarea .cm-input__wrapper {
  box-shadow: none;
  background: none;
  border: none;
}
#chat-model-com .chat-box .message-input .cm-textarea .cm-textarea__inner {
  padding: 0;
  height: 100%;
  border: none;
  outline: none;
  box-shadow: none;
  background: none;
  font-size: 14px;
  overflow-y: auto;
  color: var(--color-text-content);
}
#chat-model-com .chat-box .message-input .cm-textarea input {
  flex: 1;
  height: 100%;
  outline: none;
  border: none;
}
#chat-model-com .chat-box .message-input .cm-textarea input[disabled] {
  background: none;
  cursor: not-allowed;
}
#chat-model-com .chat-box .message-input .cm-textarea input:focus + .cm-input__suffix {
  display: block;
}
#chat-model-com .chat-box .message-input .cm-textarea .cm-input__suffix {
  display: none;
}
#chat-model-com .chat-box .message-input .cm-textarea .cm-input__icon {
  font-size: 18px;
  line-height: 48px;
  cursor: pointer;
}
#chat-model-com .chat-box .message-input .cm-textarea:hover .cm-input__suffix {
  display: block;
}
#chat-model-com .chat-box .message-input .kbd-popover.cm-popover.cm-popper {
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.05);
  border: 1px solid var(--color-border);
  font-size: 12px;
  padding: 6px;
  width: auto !important;
  white-space: nowrap;
  z-index: 20002;
}
#chat-model-com .chat-box .message-input .kbd-popover.cm-popover.cm-popper kbd {
  border: 1px solid var(--color-border-message);
  padding: 0px 4px;
  border-radius: 4px;
  margin: 2px 4px;
  display: inline-block;
}
#chat-model-com .chat-box .message-input img {
  width: 24px;
  height: 24px;
  margin-left: 8px;
  cursor: pointer;
}
#chat-model-com .chat-box .message-input img.active {
  transform: scale(1.3);
}
#chat-model-com .chat-box .message-input .anticon {
  font-size: 22px;
  color: var(--color-text-desc);
}

    </style>
    <style type="text/css">.chat-main {
  height: 100%;
  position: relative;
  z-index: 9;
}
.chat-main .chat-doc-message {
  list-style: none;
  display: flex;
  margin-bottom: 0;
  align-items: center;
  padding: 0;
}
.chat-main .chat-doc-message .chat-doc-info {
  flex: 1;
  list-style: none;
  margin: 0;
}
.chat-main .chat-doc-message .chat-doc-info em {
  display: block;
  font-style: normal;
  font-size: 15px;
}
.chat-main .chat-doc-message .chat-doc-info em:last-child {
  font-size: 12px;
  color: #606266;
}
.chat-main .chat-doc-message .chat-doc-img {
  list-style: none;
  margin: 0;
  margin-left: 64px;
}
.chat-main .chat-doc-message .chat-doc-img img {
  width: 40px;
  margin: 0;
  border-radius: 0;
}

    </style>
    <style type="text/css">.hots {
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: #fff;
}
.hots .hots-title {
  font-size: 16px;
  font-weight: 500;
  color: #222226;
  line-height: 24px;
  padding: 12px 16px 10px 16px;
  border-bottom: 1px solid #f0f0f2;
  margin-bottom: 8px;
}
.hots .hots-list {
  flex: 1;
  min-height: 0;
  overflow: auto;
}
.hots .hots-list .hot {
  padding: 8px 16px;
  cursor: pointer;
}
.hots .hots-list .hot:hover {
  background-color: #f0f0f2;
}
.hots .hots-list .hot-title {
  font-size: 16px;
  font-weight: 500;
  color: #222226;
  line-height: 22px;
}
.hots .hots-list .hot-desc {
  margin-top: 8px;
  font-size: 14px;
  font-weight: 400;
  color: #222226;
  line-height: 20px;
}

    </style>
    <style type="text/css">.right-aside {
  background-color: #fff;
  width: 338px;
  display: flex;
  flex-direction: column;
  position: relative;
}
.right-aside .ai-tool {
  display: block;
  height: 200px;
  margin: 0 auto;
  margin-top: 16px;
}
.right-aside .ai-hots {
  flex: 1;
  min-height: 0;
}

    </style>
    <style type="text/css">.chat-container {
  --color-text-primary: #222226;
  --color-text-content: #555570;
  --color-text-desc: #999aaa;
  --color-menu-bg: rgba(255, 255, 255, 0.7);
  --color-menu-active-bg: #fafafc;
  --color-input-bg: #fff;
  --color-border: #f7f7fc;
  --color-border-message: #f0f0f5;
  --color-btn-bg: #fff;
  --color-main-bg: #fff;
  --color-sug-bg: #fff;
  --color-sug-active-bg: #f6f7fb;
  --color-message-bg-left: rgba(39, 124, 204, 0.1);
  --color-message-bg-right: #faf6ee;
  --color-mask-text: rgba(0, 0, 0, 0.07);
}

.chat-container.dark {
  --color-text-primary: #e8e8f0;
  --color-text-content: #ccccd8;
  --color-text-desc: #999aaa;
  --color-menu-active-bg: rgba(255, 255, 255, 0.1);
  --color-menu-bg: #30313e;
  --color-input-bg: rgba(255, 255, 255, 0.1);
  --color-border: #494a56;
  --color-border-message: #f0f0f5;
  --color-btn-bg: #494a56;
  --color-main-bg: #242429;
  --color-sug-bg: #30313e;
  --color-sug-active-bg: rgba(255, 255, 255, 0.1);
  --el-overlay-color-lighter: rgba(255, 255, 255, 0.01);
  --color-message-bg-left: #d9ecff;
  --color-message-bg-right: #faf6ee;
  --color-mask-text: rgba(255, 255, 255, 0.06);
}

.chat-container * {
  box-sizing: border-box;
}
.chat-container .em {
  display: inline-block;
  color: #fff;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  text-align: center;
  line-height: 16px;
  font-size: 12px;
  font-style: normal !important;
  background: var(--color-text-content);
  margin-left: 3px;
}
.chat-container img {
  display: block;
}
@media screen and (min-width: 769px) {
  .chat-container .scrollstyle:hover::-webkit-scrollbar-thumb, .chat-container .chat-settings-list:hover::-webkit-scrollbar-thumb {
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
    background: var(--color-border);
  }
  .chat-container .scrollstyle::-webkit-scrollbar, .chat-container .chat-settings-list::-webkit-scrollbar {
    width: 5px;
    height: 5px;
  }
  .chat-container .scrollstyle::-webkit-scrollbar-thumb, .chat-container .chat-settings-list::-webkit-scrollbar-thumb {
    border-radius: 10px;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
    background: rgba(0, 0, 0, 0);
  }
  .chat-container .scrollstyle::-webkit-scrollbar-track, .chat-container .chat-settings-list::-webkit-scrollbar-track {
    border-radius: 10px;
    background: rgba(0, 0, 0, 0);
  }
}
@media screen and (min-width: 769px) {
  .chat-container .fixheader {
    height: calc(100vh - 126px);
  }
}
@media screen and (max-width: 768px) {
  .chat-container .fixheader {
    min-height: 100vh;
  }
}
.chat-container .relative {
  position: relative;
}
.chat-container .flex {
  display: flex;
}
.chat-container .flex-1 {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}
.chat-container .flex-center {
  display: flex;
  justify-content: center;
  align-items: center;
}
.chat-container .flex-center .list-content {
  min-height: auto !important;
}
.chat-container .line-2 {
  word-break: break-all;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.chat-container .line {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-100 {
    width: 100% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-90 {
    width: 90% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-10 {
    width: 10% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-m-0 {
    margin: 0 !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-m-10 {
    margin: 10px !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-p-20 {
    padding: 20px !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-hide {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  .chat-container .m-show {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-show {
    display: block !important;
  }
}
.chat-container .chat-toast-message {
  position: absolute;
  background: rgba(0, 0, 0, 0.5) !important;
  border: none;
  opacity: 1;
}
.chat-container .chat-toast-message .cm-message__icon,
.chat-container .chat-toast-message .cm-message__content {
  color: #fff;
}
.chat-container .cm-overlay.is-message-box {
  position: absolute;
  background: rgba(0, 0, 0, 0.15);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box {
  position: absolute;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box {
  padding: 24px;
  vertical-align: baseline;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header {
  width: 100%;
  padding: 0;
  font-size: 18px;
  color: var(--color-text-primary);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn {
  position: static;
  height: 20px;
  width: 20px;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn .cm-message-box__close {
  font-size: 20px;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn .cm-message-box__close:hover {
  color: var(--color-text-primary);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__content {
  font-size: 14px;
  padding: 18px 0;
  color: var(--color-text-primary);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button {
  width: 96px;
  height: 32px;
  border-radius: 18px;
  border: 1px solid #e8e8ed;
  color: #555666;
  font-size: 14px;
  background: #fff;
  outline: none;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button:hover {
  border: 1px solid #999aaa;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button.cm-button--primary {
  background: #fc5531;
  border: none;
  color: #fff;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button.cm-button--primary:hover {
  background: #fc1944;
}
.chat-container .reference_title {
  font-size: 16px;
  margin: 24px 0 12px;
  padding-left: 12px;
  position: relative;
  color: var(--color-text-primary);
  padding-top: 0;
}
.chat-container .reference_title::before {
  content: "";
  position: absolute;
  width: 3px;
  height: 1em;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: var(--color-text-content);
}
.chat-container .reference_list {
  display: flex;
  align-items: center;
  column-gap: 20px;
  row-gap: 10px;
  flex-wrap: wrap;
  list-style: none;
  padding-left: 0;
  line-height: 18px;
  list-style: none;
}
.chat-container .reference_list .reference_item {
  list-style: none;
  padding: 4px 20px 4px 32px;
  border-radius: 16px;
  background: #fff;
  max-width: 100%;
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 6px;
  margin: 0;
  overflow: hidden;
  background: #fff url("https://devbit-static.oss-cn-beijing.aliyuncs.com/ai100/chat/imgs/icon-reference-c.png") 2px center/24px no-repeat;
}
.chat-container .reference_list .reference_item .reference_index,
.chat-container .reference_list .reference_item em {
  color: #fff;
  border-radius: 50%;
  display: block;
  width: 16px;
  height: 16px;
  text-align: center;
  line-height: 16px;
  font-size: 12px;
  font-style: normal;
  margin-left: 0;
  background: var(--color-text-content);
}
.chat-container .reference_list .reference_item .reference_index + em,
.chat-container .reference_list .reference_item em + em {
  margin-left: -3px;
}
.chat-container .reference_list .reference_item a {
  display: block;
  font-size: 13px;
  width: 100%;
  height: 100%;
  color: var(--color-text-content);
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-decoration: none;
}
.chat-container .reference_list .reference_item a:hover {
  color: var(--color-text-primary);
}

.chat-settings-list {
  height: 100%;
  overflow-y: auto;
  padding-right: 24px;
  margin: 16px 32px 0 60px;
}
@media screen and (max-width: 768px) {
  .chat-settings-list {
    margin: 8px 24px 0 32px;
  }
}
.chat-settings-list .chat-setting-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0;
  box-sizing: border-box;
}
.chat-settings-list .chat-setting-item .label {
  color: var(--color-text-content);
  font-size: 15px;
  flex: 1;
  display: flex;
  align-items: center;
  column-gap: 4px;
}
.chat-settings-list .chat-setting-item .value {
  color: var(--color-text-content);
  font-size: 15px;
}
.chat-settings-list .chat-setting-item .cm-select,
.chat-settings-list .chat-setting-item .cm-slider {
  flex: 1;
  max-width: 224px;
}
.chat-settings-list .chat-setting-item .cm-select .cm-slider__bar,
.chat-settings-list .chat-setting-item .cm-slider .cm-slider__bar {
  background: linear-gradient(to right, #dd88ff, #6d5ffd);
}
.chat-settings-list .chat-setting-item .cm-select .cm-slider__button,
.chat-settings-list .chat-setting-item .cm-slider .cm-slider__button {
  border: 2px solid #6d5ffd;
}

    </style>
    <style type="text/css">.chat-drawer-fade-enter-active,
.chat-drawer-fade-leave-active {
  transition: opacity 0.3s ease;
}

.chat-drawer-fade-enter-from,
.chat-drawer-fade-leave-to {
  opacity: 0;
}

.chat-drawer-slide-fade-enter-active {
  transition: all 0.3s ease-out;
}

.chat-drawer-slide-fade-leave-active {
  transition: all 0.3s ease-in-out;
}

.chat-drawer-slide-fade-enter-from,
.chat-drawer-slide-fade-leave-to {
  transform: translateX(100%);
}

.chat-drawer-model {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.chat-drawer-model .drawer__mask {
  position: absolute;
  background: rgba(0, 0, 0, 0.1);
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 9;
  pointer-events: initial;
}
.chat-drawer-model .drawer__container {
  height: 100%;
  right: 0;
  display: flex;
  position: absolute;
  flex-direction: column;
  z-index: 99;
  pointer-events: initial;
}
.chat-drawer-model .drawer__title {
  color: var(--color-text-primary);
  font-size: 22px;
  display: flex;
  align-items: center;
}
.chat-drawer-model .drawer__title img {
  width: 24px;
  margin: 0 6px 0 12px;
}
.chat-drawer-model .drawer__header {
  padding: 20px 26px;
  margin-bottom: 0;
  background: var(--color-sug-bg);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.chat-drawer-model .drawer__header .close_btn {
  cursor: pointer;
}
.chat-drawer-model .drawer__body {
  flex: 1;
  padding: 0 8px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--color-sug-bg);
  padding-bottom: 12px;
}
.chat-drawer-model .drawer__body .new-chat-btn {
  width: 236px;
}

    </style>
    <style type="text/css">.chat-roles-list {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  row-gap: 16px;
  overflow-y: auto;
}
.chat-roles-list .chat-role-item {
  width: 268px;
  height: 76px;
  padding: 8px 16px;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  font-size: 14px;
  color: var(--color-text-primary);
}
.chat-roles-list .chat-role-item img {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 4px;
  vertical-align: middle;
}
.chat-roles-list .chat-role-item .name {
  height: 20px;
  font-size: 14px;
  font-family: PingFangSC-Medium, PingFang SC;
  font-weight: 500;
  color: #222226;
  line-height: 20px;
  vertical-align: middle;
}
.chat-roles-list .desc {
  margin-top: 8px;
  font-size: 12px;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #999aaa;
  line-height: 16px;
}

    </style>
    <style type="text/css">.cm-dialog.chat-doc-manage-modal .cm-loading-mask {
  background-color: transparent;
}
.cm-dialog.chat-doc-manage-modal .cm-dialog__header {
  padding: 24px 15px 0 24px;
  font-size: 16px;
  font-family: PingFangSC-Medium, PingFang SC;
  font-weight: 500;
  color: #222226;
}
.cm-dialog.chat-doc-manage-modal .cm-dialog__header .cm-dialog__headerbtn {
  color: #999AAA;
  top: 0;
}
.cm-dialog.chat-doc-manage-modal .cm-dialog__header .cm-dialog__headerbtn:hover .cm-dialog__close {
  color: #999AAA;
}
.cm-dialog.chat-doc-manage-modal .cm-dialog__body {
  padding: 0 24px;
}
.cm-dialog.chat-doc-manage-modal .empty-data .is-loaded {
  padding-top: 90px;
}
.cm-dialog.chat-doc-manage-modal .empty-data .is-loaded img {
  user-select: none;
  width: 120px;
  display: block;
  margin: 0 auto;
}
.cm-dialog.chat-doc-manage-modal .empty-data .is-loaded p {
  text-align: center;
  font-weight: 400;
  margin: 0;
  font-size: 14px;
  color: #555666;
  line-height: 20px;
}
.chat-doc-manage-list-wrap {
  display: flex;
  flex-direction: column;
  height: 506px;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list {
  flex: 1;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer * {
  box-sizing: border-box;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-header {
  width: 100%;
  margin: 5px 0;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-header .table-header-it {
  font-size: 14px;
  line-height: 40px;
  padding: 0 4px;
  font-size: 14px;
  font-weight: 400;
  color: #999aaa;
  user-select: none;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-header .table-header-it.pointer {
  cursor: pointer;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row {
  height: 328px;
  overflow-y: auto;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item {
  height: 48px;
  margin-top: 8px;
  background: #fff;
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid #E8E8F0;
  transition: all 0.2s;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item:first-child {
  margin-top: 0;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item:hover {
  border-color: #555666;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it {
  padding: 0 4px;
  flex-shrink: 0;
  line-height: 48px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 12px;
  font-weight: 400;
  color: #999aaa;
  cursor: default;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it:not(.fileName) {
  user-select: none;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it:last-child {
  border-right: none;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.fileName {
  font-size: 0;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.fileName span,
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.fileName img {
  vertical-align: middle;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.fileName span {
  color: #222226;
  font-size: 12px;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.fileName img {
  width: 16px;
  height: 18px;
  margin-right: 4px;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.actions {
  font-size: 0;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.actions button,
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.actions i {
  vertical-align: middle;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.actions button {
  cursor: pointer;
  width: 40px;
  line-height: 18px;
  border-radius: 10px;
  color: #555666;
  border: 1px solid #999AAA;
  font-size: 12px;
  font-weight: 400;
  margin-right: 12px;
  transition: all 0.2s;
  background-color: #fff;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.actions button:hover {
  border-color: #555666;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.actions button.primary-btn {
  color: #6D5FFD;
  border: 1px solid #6D5FFD;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.actions button.primary-btn:hover {
  background-color: #6D5FFD;
  color: #fff;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.actions i {
  font-size: 16px;
  cursor: pointer;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-row .table-item-it.actions i:hover {
  color: #595959;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .table-footer {
  display: flex;
  justify-content: center;
  margin-top: 16px;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .cm-pager li {
  font-size: 12px;
  transition: all 0.2s;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .cm-pager li:hover {
  font-weight: bold;
  color: #222226;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .cm-pager li.is-active {
  background-color: rgb(85, 86, 102);
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .cm-pager li.is-active:hover {
  color: #fff;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .btn-prev:disabled {
  color: rgb(232, 232, 237);
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination button {
  color: #555665;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .btn-next:hover, .chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .btn-prev:hover {
  color: #222226;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .btn-next:disabled, .chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .btn-prev:disabled {
  color: rgb(232, 232, 237);
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .btn-next, .chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .btn-prev, .chat-doc-manage-list-wrap .chat-doc-manage-list .table-outer .chat-doc-manage-list-pagination.is-background .cm-pager li {
  background-color: #fff;
  border-radius: 4px;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .flex {
  display: flex;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .flex1 {
  flex: 1;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .flex-warp {
  flex-wrap: wrap;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .flex-direction-cloumn {
  flex-direction: column;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .justify-content-between {
  justify-content: space-between;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .justify-content-center {
  justify-content: center;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .align-items-center {
  align-items: center;
}
.chat-doc-manage-list-wrap .chat-doc-manage-list .align-content-between {
  align-content: space-between;
}

.chat-doc-delete-confirm-dialog {
  width: 366px;
}
.chat-doc-delete-confirm-dialog .chat-doc-button {
  padding: 0 23px;
  line-height: 38px;
  border-radius: 20px;
  border: 1px solid #ccccd8;
  background-color: #fff;
  font-size: 16px;
  outline: none;
  font-weight: 400;
  color: #555666;
  cursor: pointer;
  transition: all 0.2s;
}
.chat-doc-delete-confirm-dialog .chat-doc-button:hover {
  border-color: #999aaa;
  background: #fff;
  color: #555666;
}
.chat-doc-delete-confirm-dialog .chat-doc-button.primary {
  color: #fff;
  border-color: rgb(109, 95, 253);
  background-color: rgb(109, 95, 253);
}
.chat-doc-delete-confirm-dialog .chat-doc-button.primary:hover {
  background-color: rgb(109, 95, 253);
}
.chat-doc-delete-confirm-dialog .chat-doc-button.disable {
  cursor: not-allowed;
  border: none;
  background-color: rgba(109, 95, 253, 0.5);
}
.chat-doc-delete-confirm-dialog .chat-doc-button.disable:hover {
  background-color: rgba(109, 95, 253, 0.5);
}
.chat-doc-delete-confirm-dialog .chat-doc-button {
  padding: 0 34px;
}
.chat-doc-delete-confirm-dialog .cm-message-box__content {
  padding-bottom: 32px;
}

    </style>
    <style type="text/css">.chat-doc-upload-step {
  display: flex;
  white-space: nowrap;
  margin-top: 32px;
  padding: 0 24px;
}
.chat-doc-upload-step_item {
  display: flex;
  align-items: center;
  position: relative;
  flex-shrink: 1;
}
.chat-doc-upload-step_item__label {
  font-size: 0;
}
.chat-doc-upload-step_item__label-icon {
  display: inline-block;
  border-radius: 50%;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  background: #ccccd8;
  text-align: center;
  font-size: 17px;
  font-weight: bold;
  color: #ffffff;
  line-height: 24px;
  margin-right: 4px;
}
.chat-doc-upload-step_item__label-name {
  user-select: none;
  display: inline-block;
  vertical-align: middle;
  font-size: 16px;
  font-weight: 400;
  color: #999aaa;
}
.chat-doc-upload-step_item__label.active .chat-doc-upload-step_item__label-icon {
  background: #6D5FFD;
}
.chat-doc-upload-step_item__label.active .chat-doc-upload-step_item__label-name {
  font-weight: 600;
  color: #222226;
}
.chat-doc-upload-step_item__line {
  height: 2px;
  margin: 0 8px;
  background: #ccccd8;
  flex: 1;
  position: relative;
}
.chat-doc-upload-step_item__line::before {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 2px;
  top: 0;
  left: 0;
  transition: width 0.3s;
  background: #555666;
}
.chat-doc-upload-step_item__line.active::before {
  width: 100%;
}

    </style>
    <style type="text/css">@charset "UTF-8";
.chat-doc-progress {
  height: 60px;
  background: rgba(232, 232, 237, 0.5);
  margin-top: 8px;
  border-radius: 8px;
  padding: 14px 16px 0;
  box-sizing: border-box;
}
.chat-doc-progress-title {
  display: flex;
  justify-content: space-between;
}
.chat-doc-progress-title_left {
  font-size: 0;
  line-height: 16px;
  flex: 1;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.chat-doc-progress-title_left img {
  width: 16px;
  height: 16px;
  vertical-align: middle;
}
.chat-doc-progress-title_left span {
  vertical-align: middle;
  font-size: 12px;
  margin-left: 4px;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #555666;
  display: inline-block;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.chat-doc-progress-title_right {
  font-size: 0;
  margin-left: 32px;
  line-height: 16px;
  display: flex;
  align-items: center;
}
.chat-doc-progress-title_right .info {
  font-size: 12px;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 500;
  color: #222226;
}
.chat-doc-progress-title_right .info.success {
  color: #66BB55;
}
.chat-doc-progress-title_right .info.error {
  color: #FC1944;
}
.chat-doc-progress-title_right .progress {
  margin-left: 4px;
  font-size: 12px;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #222226;
}
.chat-doc-progress—inner {
  margin-top: 10px;
}
.chat-doc-progress—inner .cm-progress-bar__inner {
  background: linear-gradient(90deg, #9CA9F6 0%, #C5AEF7 100%);
}
.chat-doc-progress—inner .cm-progress-bar__outer {
  background-color: rgba(204, 204, 216, 0.5);
}

    </style>
    <style type="text/css">.chat-doc-upload-form {
  margin-top: 24px;
  margin-bottom: 36px;
  border: none;
}
.chat-doc-upload-form .chat-doc-upload-form_inner {
  position: relative;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .is-drag {
  height: 310px;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .is-drag .cm-upload-dragger {
  background: #fff;
  padding: 16px;
  height: 100%;
  border-radius: 8px;
  border: 1px dashed #999AAA;
  border: 1px dashed transparent;
  transition: all 0.2s;
  background: linear-gradient(white, white) padding-box, repeating-linear-gradient(-45deg, #CCCCD8 0, #CCCCD8 4px, white 0, white 7px);
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload__tip {
  margin-top: 8px;
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  color: #8f90a6;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload_empty-file {
  margin-top: 64px;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload_empty-file .chat-doc-upload__icon {
  width: 48px;
  margin-bottom: 8px;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload_empty-file .chat-doc-upload__text {
  font-size: 14px;
  font-weight: 500;
  color: #222226;
  line-height: 22px;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload_empty-file .chat-doc-upload__text em {
  color: #277ccc;
  font-style: normal;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload_empty-file .chat-doc-upload__text.disabled {
  cursor: default;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload-file {
  margin-top: 54px;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload-file img {
  width: 48px;
  height: 48px;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload-file .chat-doc-upload__mtext {
  margin: 0;
  margin-top: 8px;
  font-size: 14px;
  font-weight: 500;
  color: #222226;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  max-width: 368px;
  text-align: center;
  margin: 0 auto;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload-file .chat-doc-upload__text {
  margin: 0;
  font-size: 12px;
  font-weight: 400;
  margin-top: 4px;
  color: #999aaa;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload-file .chat-doc-upload__text em {
  color: #277ccc;
  font-style: normal;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload-file .chat-doc-upload__mini-btn {
  margin: 8px auto 0;
  height: 24px;
  background: #FFFFFF;
  border-radius: 12px;
  border: 1px solid #CCCCD8;
  padding: 0 10px;
  font-size: 12px;
  font-family: PingFangSC-Regular, PingFang SC;
  font-weight: 400;
  color: #222226;
  line-height: 24px;
  vertical-align: middle;
  display: flex;
  align-items: center;
  width: 115px;
  justify-content: center;
  box-sizing: border-box;
  overflow: hidden;
  transition: all 0.2s;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload-file .chat-doc-upload__mini-btn:hover {
  border-color: #999aaa;
  background: #fff;
  color: #555666;
}
.chat-doc-upload-form .chat-doc-upload-form_inner .chat-doc-upload_progress {
  position: absolute;
  bottom: 16px;
  box-sizing: border-box;
  width: 100%;
  padding: 0 16px;
  margin-left: -16px;
}

    </style>
    <style type="text/css">.chat-doc-upload[data-v-731dc25e] .chat-doc-upload-inner[data-v-731dc25e] {
  position: relative;
}
.chat-doc-upload[data-v-731dc25e] .chat-doc-upload-inner[data-v-731dc25e] .error-text[data-v-731dc25e] {
  position: absolute;
  bottom: -30px;
  margin: 0;
  font-size: 12px;
  font-weight: 400;
  color: #FC1944;
  line-height: 20px;
}
.chat-doc-upload[data-v-731dc25e] .footer-btns[data-v-731dc25e] .chat-doc-button[data-v-731dc25e] {
  height: 40px;
  border-radius: 20px;
  padding: 0 24px;
}

    </style>
    <style type="text/css">.cm-dialog.chat-doc-manage-modal {
  background-image: url("https://cdn-static-devbit.csdn.net/ai100/chat/imgs/chat-doc-modal-bg.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  border-radius: 6px;
  height: 554px;
}
.cm-dialog.chat-doc-manage-modal .chat-doc-button {
  padding: 0 23px;
  line-height: 38px;
  border-radius: 20px;
  border: 1px solid #ccccd8;
  background-color: #fff;
  font-size: 16px;
  outline: none;
  font-weight: 400;
  color: #555666;
  cursor: pointer;
  transition: all 0.2s;
}
.cm-dialog.chat-doc-manage-modal .chat-doc-button:hover {
  border-color: #999aaa;
  background: #fff;
  color: #555666;
}
.cm-dialog.chat-doc-manage-modal .chat-doc-button.primary {
  color: #fff;
  border-color: rgb(109, 95, 253);
  background-color: rgb(109, 95, 253);
}
.cm-dialog.chat-doc-manage-modal .chat-doc-button.primary:hover {
  background-color: rgb(109, 95, 253);
}
.cm-dialog.chat-doc-manage-modal .chat-doc-button.disable {
  cursor: not-allowed;
  border: none;
  background-color: rgba(109, 95, 253, 0.5);
}
.cm-dialog.chat-doc-manage-modal .chat-doc-button.disable:hover {
  background-color: rgba(109, 95, 253, 0.5);
}
.cm-dialog.chat-doc-manage-modal .dialog-footer button:first-child {
  margin-right: 12px;
}
.cm-dialog.chat-doc-manage-modal .cm-dialog__footer {
  display: none;
}
.cm-dialog.chat-doc-manage-modal .footer-btns {
  display: block;
  padding: 16px 0 24px 0;
  width: 100%;
  text-align: right;
}
.cm-dialog.chat-doc-manage-modal .footer-btns button {
  margin-left: 16px;
}
.cm-dialog.chat-doc-manage-modal .footer-btns button:first-child {
  margin-left: 0;
}

    </style>
    <style type="text/css">.chat-doc_upload-button[data-v-7882576a] button[data-v-7882576a] {
  padding: 0 16px;
  height: 32px;
  background: #ffffff;
  border-radius: 16px;
  font-size: 0;
  border: 1px solid #e8e8ed;
  cursor: pointer;
  margin-bottom: 16px;
}
.chat-doc_upload-button[data-v-7882576a] button[data-v-7882576a] img[data-v-7882576a] {
  display: inline-block;
  vertical-align: middle;
  margin-right: 4px;
}
.chat-doc_upload-button[data-v-7882576a] button[data-v-7882576a] span[data-v-7882576a],
.chat-doc_upload-button[data-v-7882576a] button[data-v-7882576a] i[data-v-7882576a] {
  vertical-align: middle;
}
.chat-doc_upload-button[data-v-7882576a] button[data-v-7882576a] i[data-v-7882576a] {
  color: #000;
}
.chat-doc_upload-button[data-v-7882576a] button[data-v-7882576a] span[data-v-7882576a] {
  font-size: 14px;
  font-weight: 400;
  color: #555666;
}

    </style>
    <style type="text/css">.chat-container {
  --color-text-primary: #222226;
  --color-text-content: #555570;
  --color-text-desc: #999aaa;
  --color-menu-bg: rgba(255, 255, 255, 0.7);
  --color-menu-active-bg: #fafafc;
  --color-input-bg: #fff;
  --color-border: #f7f7fc;
  --color-border-message: #f0f0f5;
  --color-btn-bg: #fff;
  --color-main-bg: #fff;
  --color-sug-bg: #fff;
  --color-sug-active-bg: #f6f7fb;
  --color-message-bg-left: rgba(39, 124, 204, 0.1);
  --color-message-bg-right: #faf6ee;
  --color-mask-text: rgba(0, 0, 0, 0.07);
}

.chat-container.dark {
  --color-text-primary: #e8e8f0;
  --color-text-content: #ccccd8;
  --color-text-desc: #999aaa;
  --color-menu-active-bg: rgba(255, 255, 255, 0.1);
  --color-menu-bg: #30313e;
  --color-input-bg: rgba(255, 255, 255, 0.1);
  --color-border: #494a56;
  --color-border-message: #f0f0f5;
  --color-btn-bg: #494a56;
  --color-main-bg: #242429;
  --color-sug-bg: #30313e;
  --color-sug-active-bg: rgba(255, 255, 255, 0.1);
  --el-overlay-color-lighter: rgba(255, 255, 255, 0.01);
  --color-message-bg-left: #d9ecff;
  --color-message-bg-right: #faf6ee;
  --color-mask-text: rgba(255, 255, 255, 0.06);
}

.chat-container * {
  box-sizing: border-box;
}
.chat-container .em {
  display: inline-block;
  color: #fff;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  text-align: center;
  line-height: 16px;
  font-size: 12px;
  font-style: normal !important;
  background: var(--color-text-content);
  margin-left: 3px;
}
.chat-container img {
  display: block;
}
@media screen and (min-width: 769px) {
  .chat-container .scrollstyle:hover::-webkit-scrollbar-thumb {
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
    background: var(--color-border);
  }
  .chat-container .scrollstyle::-webkit-scrollbar {
    width: 5px;
    height: 5px;
  }
  .chat-container .scrollstyle::-webkit-scrollbar-thumb {
    border-radius: 10px;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
    background: rgba(0, 0, 0, 0);
  }
  .chat-container .scrollstyle::-webkit-scrollbar-track {
    border-radius: 10px;
    background: rgba(0, 0, 0, 0);
  }
}
@media screen and (min-width: 769px) {
  .chat-container .fixheader {
    height: calc(100vh - 126px);
  }
}
@media screen and (max-width: 768px) {
  .chat-container .fixheader {
    min-height: 100vh;
  }
}
.chat-container .relative {
  position: relative;
}
.chat-container .flex {
  display: flex;
}
.chat-container .flex-1 {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}
.chat-container .flex-center {
  display: flex;
  justify-content: center;
  align-items: center;
}
.chat-container .flex-center .list-content {
  min-height: auto !important;
}
.chat-container .line-2 {
  word-break: break-all;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.chat-container .line {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-100 {
    width: 100% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-90 {
    width: 90% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-w-10 {
    width: 10% !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-m-0 {
    margin: 0 !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-m-10 {
    margin: 10px !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-p-20 {
    padding: 20px !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-hide {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  .chat-container .m-show {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .chat-container .m-show {
    display: block !important;
  }
}
.chat-container .chat-toast-message {
  position: absolute;
  background: rgba(0, 0, 0, 0.5) !important;
  border: none;
  opacity: 1;
}
.chat-container .chat-toast-message .cm-message__icon,
.chat-container .chat-toast-message .cm-message__content {
  color: #fff;
}
.chat-container .cm-overlay.is-message-box {
  position: absolute;
  background: rgba(0, 0, 0, 0.15);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box {
  position: absolute;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box {
  padding: 24px;
  vertical-align: baseline;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header {
  width: 100%;
  padding: 0;
  font-size: 18px;
  color: var(--color-text-primary);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn {
  position: static;
  height: 20px;
  width: 20px;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn .cm-message-box__close {
  font-size: 20px;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__header .cm-message-box__headerbtn .cm-message-box__close:hover {
  color: var(--color-text-primary);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__content {
  font-size: 14px;
  padding: 18px 0;
  color: var(--color-text-primary);
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button {
  width: 96px;
  height: 32px;
  border-radius: 18px;
  border: 1px solid #e8e8ed;
  color: #555666;
  font-size: 14px;
  background: #fff;
  outline: none;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button:hover {
  border: 1px solid #999aaa;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button.cm-button--primary {
  background: #fc5531;
  border: none;
  color: #fff;
}
.chat-container .cm-overlay.is-message-box .cm-overlay-message-box .cm-message-box .cm-message-box__btns .cm-button.cm-button--primary:hover {
  background: #fc1944;
}
.chat-container .reference_title {
  font-size: 16px;
  margin: 24px 0 12px;
  padding-left: 12px;
  position: relative;
  color: var(--color-text-primary);
  padding-top: 0;
}
.chat-container .reference_title::before {
  content: "";
  position: absolute;
  width: 3px;
  height: 1em;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: var(--color-text-content);
}
.chat-container .reference_list {
  display: flex;
  align-items: center;
  column-gap: 20px;
  row-gap: 10px;
  flex-wrap: wrap;
  list-style: none;
  padding-left: 0;
  line-height: 18px;
  list-style: none;
}
.chat-container .reference_list .reference_item {
  list-style: none;
  padding: 4px 20px 4px 32px;
  border-radius: 16px;
  background: #fff;
  max-width: 100%;
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 6px;
  margin: 0;
  overflow: hidden;
  background: #fff url("https://devbit-static.oss-cn-beijing.aliyuncs.com/ai100/chat/imgs/icon-reference-c.png") 2px center/24px no-repeat;
}
.chat-container .reference_list .reference_item .reference_index,
.chat-container .reference_list .reference_item em {
  color: #fff;
  border-radius: 50%;
  display: block;
  width: 16px;
  height: 16px;
  text-align: center;
  line-height: 16px;
  font-size: 12px;
  font-style: normal;
  margin-left: 0;
  background: var(--color-text-content);
}
.chat-container .reference_list .reference_item .reference_index + em,
.chat-container .reference_list .reference_item em + em {
  margin-left: -3px;
}
.chat-container .reference_list .reference_item a {
  display: block;
  font-size: 13px;
  width: 100%;
  height: 100%;
  color: var(--color-text-content);
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-decoration: none;
}
.chat-container .reference_list .reference_item a:hover {
  color: var(--color-text-primary);
}

    </style>
    <style type="text/css">@charset "UTF-8";
:root {
  --cm-color-white: #ffffff;
  --cm-color-black: #000000;
  --cm-color-primary-rgb: 64, 158, 255;
  --cm-color-success-rgb: 103, 194, 58;
  --cm-color-warning-rgb: 230, 162, 60;
  --cm-color-danger-rgb: 245, 108, 108;
  --cm-color-error-rgb: 245, 108, 108;
  --cm-color-info-rgb: 144, 147, 153;
  --cm-font-size-extra-large: 20px;
  --cm-font-size-large: 18px;
  --cm-font-size-medium: 16px;
  --cm-font-size-base: 14px;
  --cm-font-size-small: 13px;
  --cm-font-size-extra-small: 12px;
  --cm-font-family: "Helvetica Neue", Helvetica, "PingFang SC",
    "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;
  --cm-font-weight-primary: 500;
  --cm-font-line-height-primary: 24px;
  --cm-index-normal: 1;
  --cm-index-top: 1000;
  --cm-index-popper: 2000;
  --cm-border-radius-base: 4px;
  --cm-border-radius-small: 2px;
  --cm-border-radius-round: 20px;
  --cm-border-radius-circle: 100%;
  --cm-transition-duration: 0.3s;
  --cm-transition-duration-fast: 0.2s;
  --cm-transition-function-ease-in-out-bezier: cubic-bezier(
    0.645,
    0.045,
    0.355,
    1
  );
  --cm-transition-function-fast-bezier: cubic-bezier(0.23, 1, 0.32, 1);
  --cm-transition-all: all var(--cm-transition-duration)
    var(--cm-transition-function-ease-in-out-bezier);
  --cm-transition-fade: opacity var(--cm-transition-duration)
    var(--cm-transition-function-fast-bezier);
  --cm-transition-md-fade: transform var(--cm-transition-duration)
      var(--cm-transition-function-fast-bezier),
    opacity var(--cm-transition-duration)
      var(--cm-transition-function-fast-bezier);
  --cm-transition-fade-linear: opacity var(--cm-transition-duration-fast) linear;
  --cm-transition-border: border-color var(--cm-transition-duration-fast)
    var(--cm-transition-function-ease-in-out-bezier);
  --cm-transition-box-shadow: box-shadow var(--cm-transition-duration-fast)
    var(--cm-transition-function-ease-in-out-bezier);
  --cm-transition-color: color var(--cm-transition-duration-fast)
    var(--cm-transition-function-ease-in-out-bezier);
  --cm-component-size-large: 40px;
  --cm-component-size: 32px;
  --cm-component-size-small: 24px;
}

:root {
  color-scheme: light;
  --cm-color-white: #ffffff;
  --cm-color-black: #000000;
  --cm-color-primary: #409eff;
  --cm-color-primary-light-3: #79bbff;
  --cm-color-primary-light-5: #a0cfff;
  --cm-color-primary-light-7: #c6e2ff;
  --cm-color-primary-light-8: #d9ecff;
  --cm-color-primary-light-9: #ecf5ff;
  --cm-color-primary-dark-2: #337ecc;
  --cm-color-success: #67c23a;
  --cm-color-success-light-3: #95d475;
  --cm-color-success-light-5: #b3e19d;
  --cm-color-success-light-7: #d1edc4;
  --cm-color-success-light-8: #e1f3d8;
  --cm-color-success-light-9: #f0f9eb;
  --cm-color-success-dark-2: #529b2e;
  --cm-color-warning: #e6a23c;
  --cm-color-warning-light-3: #eebe77;
  --cm-color-warning-light-5: #f3d19e;
  --cm-color-warning-light-7: #f8e3c5;
  --cm-color-warning-light-8: #faecd8;
  --cm-color-warning-light-9: #fdf6ec;
  --cm-color-warning-dark-2: #b88230;
  --cm-color-danger: #f56c6c;
  --cm-color-danger-light-3: #f89898;
  --cm-color-danger-light-5: #fab6b6;
  --cm-color-danger-light-7: #fcd3d3;
  --cm-color-danger-light-8: #fde2e2;
  --cm-color-danger-light-9: #fef0f0;
  --cm-color-danger-dark-2: #c45656;
  --cm-color-error: #f56c6c;
  --cm-color-error-light-3: #f89898;
  --cm-color-error-light-5: #fab6b6;
  --cm-color-error-light-7: #fcd3d3;
  --cm-color-error-light-8: #fde2e2;
  --cm-color-error-light-9: #fef0f0;
  --cm-color-error-dark-2: #c45656;
  --cm-color-info: #909399;
  --cm-color-info-light-3: #b1b3b8;
  --cm-color-info-light-5: #c8c9cc;
  --cm-color-info-light-7: #dedfe0;
  --cm-color-info-light-8: #e9e9eb;
  --cm-color-info-light-9: #f4f4f5;
  --cm-color-info-dark-2: #73767a;
  --cm-bg-color: #ffffff;
  --cm-bg-color-page: #f2f3f5;
  --cm-bg-color-overlay: #ffffff;
  --cm-text-color-primary: #303133;
  --cm-text-color-regular: #606266;
  --cm-text-color-secondary: #909399;
  --cm-text-color-placeholder: #a8abb2;
  --cm-text-color-disabled: #c0c4cc;
  --cm-border-color: #dcdfe6;
  --cm-border-color-light: #e4e7ed;
  --cm-border-color-lighter: #ebeef5;
  --cm-border-color-extra-light: #f2f6fc;
  --cm-border-color-dark: #d4d7de;
  --cm-border-color-darker: #cdd0d6;
  --cm-fill-color: #f0f2f5;
  --cm-fill-color-light: #f5f7fa;
  --cm-fill-color-lighter: #fafafa;
  --cm-fill-color-extra-light: #fafcff;
  --cm-fill-color-dark: #ebedf0;
  --cm-fill-color-darker: #e6e8eb;
  --cm-fill-color-blank: #ffffff;
  --cm-box-shadow: 0px 12px 32px 4px rgba(0, 0, 0, 0.04),
    0px 8px 20px rgba(0, 0, 0, 0.08);
  --cm-box-shadow-light: 0px 0px 12px rgba(0, 0, 0, 0.12);
  --cm-box-shadow-lighter: 0px 0px 6px rgba(0, 0, 0, 0.12);
  --cm-box-shadow-dark: 0px 16px 48px 16px rgba(0, 0, 0, 0.08),
    0px 12px 32px rgba(0, 0, 0, 0.12), 0px 8px 16px -8px rgba(0, 0, 0, 0.16);
  --cm-disabled-bg-color: var(--cm-fill-color-light);
  --cm-disabled-text-color: var(--cm-text-color-placeholder);
  --cm-disabled-border-color: var(--cm-border-color-light);
  --cm-overlay-color: rgba(0, 0, 0, 0.8);
  --cm-overlay-color-light: rgba(0, 0, 0, 0.7);
  --cm-overlay-color-lighter: rgba(0, 0, 0, 0.5);
  --cm-mask-color: rgba(255, 255, 255, 0.9);
  --cm-mask-color-extra-light: rgba(255, 255, 255, 0.3);
  --cm-border-width: 1px;
  --cm-border-style: solid;
  --cm-border-color-hover: var(--cm-text-color-disabled);
  --cm-border: var(--cm-border-width) var(--cm-border-style)
    var(--cm-border-color);
  --cm-svg-monochrome-grey: var(--cm-border-color);
}

.fade-in-linear-enter-active,
.fade-in-linear-leave-active {
  transition: var(--cm-transition-fade-linear);
}

.fade-in-linear-enter-from,
.fade-in-linear-leave-to {
  opacity: 0;
}

.cm-fade-in-linear-enter-active,
.cm-fade-in-linear-leave-active {
  transition: var(--cm-transition-fade-linear);
}

.cm-fade-in-linear-enter-from,
.cm-fade-in-linear-leave-to {
  opacity: 0;
}

.cm-fade-in-enter-active,
.cm-fade-in-leave-active {
  transition: all var(--cm-transition-duration) cubic-bezier(0.55, 0, 0.1, 1);
}

.cm-fade-in-enter-from,
.cm-fade-in-leave-active {
  opacity: 0;
}

.cm-zoom-in-center-enter-active,
.cm-zoom-in-center-leave-active {
  transition: all var(--cm-transition-duration) cubic-bezier(0.55, 0, 0.1, 1);
}

.cm-zoom-in-center-enter-from,
.cm-zoom-in-center-leave-active {
  opacity: 0;
  transform: scaleX(0);
}

.cm-zoom-in-top-enter-active,
.cm-zoom-in-top-leave-active {
  opacity: 1;
  transform: scaleY(1);
  transition: var(--cm-transition-md-fade);
  transform-origin: center top;
}

.cm-zoom-in-top-enter-active[data-popper-placement^=top],
.cm-zoom-in-top-leave-active[data-popper-placement^=top] {
  transform-origin: center bottom;
}

.cm-zoom-in-top-enter-from,
.cm-zoom-in-top-leave-active {
  opacity: 0;
  transform: scaleY(0);
}

.cm-zoom-in-bottom-enter-active,
.cm-zoom-in-bottom-leave-active {
  opacity: 1;
  transform: scaleY(1);
  transition: var(--cm-transition-md-fade);
  transform-origin: center bottom;
}

.cm-zoom-in-bottom-enter-from,
.cm-zoom-in-bottom-leave-active {
  opacity: 0;
  transform: scaleY(0);
}

.cm-zoom-in-left-enter-active,
.cm-zoom-in-left-leave-active {
  opacity: 1;
  transform: scale(1, 1);
  transition: var(--cm-transition-md-fade);
  transform-origin: top left;
}

.cm-zoom-in-left-enter-from,
.cm-zoom-in-left-leave-active {
  opacity: 0;
  transform: scale(0.45, 0.45);
}

.collapse-transition {
  transition: var(--cm-transition-duration) height ease-in-out, var(--cm-transition-duration) padding-top ease-in-out, var(--cm-transition-duration) padding-bottom ease-in-out;
}

.cm-collapse-transition-enter-active,
.cm-collapse-transition-leave-active {
  transition: var(--cm-transition-duration) max-height ease-in-out, var(--cm-transition-duration) padding-top ease-in-out, var(--cm-transition-duration) padding-bottom ease-in-out;
}

.horizontal-collapse-transition {
  transition: var(--cm-transition-duration) width ease-in-out, var(--cm-transition-duration) padding-left ease-in-out, var(--cm-transition-duration) padding-right ease-in-out;
}

.cm-list-enter-active,
.cm-list-leave-active {
  transition: all 1s;
}

.cm-list-enter-from,
.cm-list-leave-to {
  opacity: 0;
  transform: translateY(-30px);
}

.cm-list-leave-active {
  position: absolute !important;
}

.cm-opacity-transition {
  transition: opacity var(--cm-transition-duration) cubic-bezier(0.55, 0, 0.1, 1);
}

.cm-icon-loading {
  -webkit-animation: rotating 2s linear infinite;
  animation: rotating 2s linear infinite;
}

.cm-icon--right {
  margin-left: 5px;
}

.cm-icon--left {
  margin-right: 5px;
}

@-webkit-keyframes rotating {
  0% {
    transform: rotateZ(0);
  }
  100% {
    transform: rotateZ(360deg);
  }
}
@keyframes rotating {
  0% {
    transform: rotateZ(0);
  }
  100% {
    transform: rotateZ(360deg);
  }
}
.cm-icon {
  --color: inherit;
  height: 1em;
  width: 1em;
  line-height: 1em;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: relative;
  fill: currentColor;
  color: var(--color);
  font-size: inherit;
}

.cm-icon.is-loading {
  -webkit-animation: rotating 2s linear infinite;
  animation: rotating 2s linear infinite;
}

.cm-icon svg {
  height: 1em;
  width: 1em;
}

.cm-affix--fixed {
  position: fixed;
}

.cm-alert {
  --cm-alert-padding: 8px 16px;
  --cm-alert-border-radius-base: var(--cm-border-radius-base);
  --cm-alert-title-font-size: 13px;
  --cm-alert-description-font-size: 12px;
  --cm-alert-close-font-size: 12px;
  --cm-alert-close-customed-font-size: 13px;
  --cm-alert-icon-size: 16px;
  --cm-alert-icon-large-size: 28px;
  width: 100%;
  padding: var(--cm-alert-padding);
  margin: 0;
  box-sizing: border-box;
  border-radius: var(--cm-alert-border-radius-base);
  position: relative;
  background-color: var(--cm-color-white);
  overflow: hidden;
  opacity: 1;
  display: flex;
  align-items: center;
  transition: opacity var(--cm-transition-duration-fast);
}

.cm-alert.is-light .cm-alert__close-btn {
  color: var(--cm-text-color-placeholder);
}

.cm-alert.is-dark .cm-alert__close-btn {
  color: var(--cm-color-white);
}

.cm-alert.is-dark .cm-alert__description {
  color: var(--cm-color-white);
}

.cm-alert.is-center {
  justify-content: center;
}

.cm-alert--success {
  --cm-alert-bg-color: var(--cm-color-success-light-9);
}

.cm-alert--success.is-light {
  background-color: var(--cm-alert-bg-color);
  color: var(--cm-color-success);
}

.cm-alert--success.is-light .cm-alert__description {
  color: var(--cm-color-success);
}

.cm-alert--success.is-dark {
  background-color: var(--cm-color-success);
  color: var(--cm-color-white);
}

.cm-alert--info {
  --cm-alert-bg-color: var(--cm-color-info-light-9);
}

.cm-alert--info.is-light {
  background-color: var(--cm-alert-bg-color);
  color: var(--cm-color-info);
}

.cm-alert--info.is-light .cm-alert__description {
  color: var(--cm-color-info);
}

.cm-alert--info.is-dark {
  background-color: var(--cm-color-info);
  color: var(--cm-color-white);
}

.cm-alert--warning {
  --cm-alert-bg-color: var(--cm-color-warning-light-9);
}

.cm-alert--warning.is-light {
  background-color: var(--cm-alert-bg-color);
  color: var(--cm-color-warning);
}

.cm-alert--warning.is-light .cm-alert__description {
  color: var(--cm-color-warning);
}

.cm-alert--warning.is-dark {
  background-color: var(--cm-color-warning);
  color: var(--cm-color-white);
}

.cm-alert--error {
  --cm-alert-bg-color: var(--cm-color-error-light-9);
}

.cm-alert--error.is-light {
  background-color: var(--cm-alert-bg-color);
  color: var(--cm-color-error);
}

.cm-alert--error.is-light .cm-alert__description {
  color: var(--cm-color-error);
}

.cm-alert--error.is-dark {
  background-color: var(--cm-color-error);
  color: var(--cm-color-white);
}

.cm-alert__content {
  display: table-cell;
  padding: 0 8px;
}

.cm-alert .cm-alert__icon {
  font-size: var(--cm-alert-icon-size);
  width: var(--cm-alert-icon-size);
}

.cm-alert .cm-alert__icon.is-big {
  font-size: var(--cm-alert-icon-large-size);
  width: var(--cm-alert-icon-large-size);
}

.cm-alert__title {
  font-size: var(--cm-alert-title-font-size);
  line-height: 18px;
  vertical-align: text-top;
}

.cm-alert__title.is-bold {
  font-weight: 700;
}

.cm-alert .cm-alert__description {
  font-size: var(--cm-alert-description-font-size);
  margin: 5px 0 0 0;
}

.cm-alert .cm-alert__close-btn {
  font-size: var(--cm-alert-close-font-size);
  opacity: 1;
  position: absolute;
  top: 12px;
  right: 15px;
  cursor: pointer;
}

.cm-alert .cm-alert__close-btn.is-customed {
  font-style: normal;
  font-size: var(--cm-alert-close-customed-font-size);
  top: 9px;
}

.cm-alert-fade-enter-from,
.cm-alert-fade-leave-active {
  opacity: 0;
}

.cm-aside {
  overflow: auto;
  box-sizing: border-box;
  flex-shrink: 0;
  width: var(--cm-aside-width, 300px);
}

.cm-autocomplete {
  position: relative;
  display: inline-block;
}

.cm-autocomplete__popper.cm-popper {
  background: var(--cm-bg-color-overlay);
  border: 1px solid var(--cm-border-color-light);
  box-shadow: var(--cm-box-shadow-light);
}

.cm-autocomplete__popper.cm-popper .cm-popper__arrow::before {
  border: 1px solid var(--cm-border-color-light);
}

.cm-autocomplete__popper.cm-popper[data-popper-placement^=top] .cm-popper__arrow::before {
  border-top-color: transparent;
  border-left-color: transparent;
}

.cm-autocomplete__popper.cm-popper[data-popper-placement^=bottom] .cm-popper__arrow::before {
  border-bottom-color: transparent;
  border-right-color: transparent;
}

.cm-autocomplete__popper.cm-popper[data-popper-placement^=left] .cm-popper__arrow::before {
  border-left-color: transparent;
  border-bottom-color: transparent;
}

.cm-autocomplete__popper.cm-popper[data-popper-placement^=right] .cm-popper__arrow::before {
  border-right-color: transparent;
  border-top-color: transparent;
}

.cm-autocomplete-suggestion {
  border-radius: var(--cm-border-radius-base);
  box-sizing: border-box;
}

.cm-autocomplete-suggestion__wrap {
  max-height: 280px;
  padding: 10px 0;
  box-sizing: border-box;
}

.cm-autocomplete-suggestion__list {
  margin: 0;
  padding: 0;
}

.cm-autocomplete-suggestion li {
  padding: 0 20px;
  margin: 0;
  line-height: 34px;
  cursor: pointer;
  color: var(--cm-text-color-regular);
  font-size: var(--cm-font-size-base);
  list-style: none;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cm-autocomplete-suggestion li:hover {
  background-color: var(--cm-fill-color-light);
}

.cm-autocomplete-suggestion li.highlighted {
  background-color: var(--cm-fill-color-light);
}

.cm-autocomplete-suggestion li.divider {
  margin-top: 6px;
  border-top: 1px solid var(--cm-color-black);
}

.cm-autocomplete-suggestion li.divider:last-child {
  margin-bottom: -6px;
}

.cm-autocomplete-suggestion.is-loading li {
  text-align: center;
  height: 100px;
  line-height: 100px;
  font-size: 20px;
  color: var(--cm-text-color-secondary);
}

.cm-autocomplete-suggestion.is-loading li::after {
  display: inline-block;
  content: "";
  height: 100%;
  vertical-align: middle;
}

.cm-autocomplete-suggestion.is-loading li:hover {
  background-color: var(--cm-bg-color-overlay);
}

.cm-autocomplete-suggestion.is-loading .cm-icon-loading {
  vertical-align: middle;
}

.cm-avatar {
  --cm-avatar-text-color: var(--cm-color-white);
  --cm-avatar-bg-color: var(--cm-text-color-disabled);
  --cm-avatar-text-size: 14px;
  --cm-avatar-icon-size: 18px;
  --cm-avatar-border-radius: var(--cm-border-radius-base);
  --cm-avatar-size-large: 56px;
  --cm-avatar-size: 40px;
  --cm-avatar-size-small: 24px;
  --cm-avatar-size: 40px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  text-align: center;
  overflow: hidden;
  color: var(--cm-avatar-text-color);
  background: var(--cm-avatar-bg-color);
  width: var(--cm-avatar-size);
  height: var(--cm-avatar-size);
  font-size: var(--cm-avatar-text-size);
}

.cm-avatar > img {
  display: block;
  height: 100%;
}

.cm-avatar--circle {
  border-radius: 50%;
}

.cm-avatar--square {
  border-radius: var(--cm-avatar-border-radius);
}

.cm-avatar--icon {
  font-size: var(--cm-avatar-icon-size);
}

.cm-avatar--small {
  --cm-avatar-size: 24px;
}

.cm-avatar--large {
  --cm-avatar-size: 56px;
}

.cm-backtop {
  --cm-backtop-bg-color: var(--cm-bg-color-overlay);
  --cm-backtop-text-color: var(--cm-color-primary);
  --cm-backtop-hover-bg-color: var(--cm-border-color-extra-light);
  position: fixed;
  background-color: var(--cm-backtop-bg-color);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  color: var(--cm-backtop-text-color);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  box-shadow: var(--cm-box-shadow-lighter);
  cursor: pointer;
  z-index: 5;
}

.cm-backtop:hover {
  background-color: var(--cm-backtop-hover-bg-color);
}

.cm-backtop__icon {
  font-size: 20px;
}

.cm-badge {
  --cm-badge-bg-color: var(--cm-color-danger);
  --cm-badge-radius: 10px;
  --cm-badge-font-size: 12px;
  --cm-badge-padding: 6px;
  --cm-badge-size: 18px;
  position: relative;
  vertical-align: middle;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.cm-badge__content {
  background-color: var(--cm-badge-bg-color);
  border-radius: var(--cm-badge-radius);
  color: var(--cm-color-white);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: var(--cm-badge-font-size);
  height: var(--cm-badge-size);
  padding: 0 var(--cm-badge-padding);
  white-space: nowrap;
  border: 1px solid var(--cm-bg-color);
}

.cm-badge__content.is-fixed {
  position: absolute;
  top: 0;
  right: calc(1px + var(--cm-badge-size) / 2);
  transform: translateY(-50%) translateX(100%);
  z-index: var(--cm-index-normal);
}

.cm-badge__content.is-fixed.is-dot {
  right: 5px;
}

.cm-badge__content.is-dot {
  height: 8px;
  width: 8px;
  padding: 0;
  right: 0;
  border-radius: 50%;
}

.cm-badge__content--primary {
  background-color: var(--cm-color-primary);
}

.cm-badge__content--success {
  background-color: var(--cm-color-success);
}

.cm-badge__content--warning {
  background-color: var(--cm-color-warning);
}

.cm-badge__content--info {
  background-color: var(--cm-color-info);
}

.cm-badge__content--danger {
  background-color: var(--cm-color-danger);
}

.cm-breadcrumb {
  font-size: 14px;
  line-height: 1;
}

.cm-breadcrumb::after,
.cm-breadcrumb::before {
  display: table;
  content: "";
}

.cm-breadcrumb::after {
  clear: both;
}

.cm-breadcrumb__separator {
  margin: 0 9px;
  font-weight: 700;
  color: var(--cm-text-color-placeholder);
}

.cm-breadcrumb__separator.cm-icon {
  margin: 0 6px;
  font-weight: 400;
}

.cm-breadcrumb__separator.cm-icon svg {
  vertical-align: middle;
}

.cm-breadcrumb__item {
  float: left;
  display: inline-flex;
  align-items: center;
}

.cm-breadcrumb__inner {
  color: var(--cm-text-color-regular);
}

.cm-breadcrumb__inner a,
.cm-breadcrumb__inner.is-link {
  font-weight: 700;
  text-decoration: none;
  transition: var(--cm-transition-color);
  color: var(--cm-text-color-primary);
}

.cm-breadcrumb__inner a:hover,
.cm-breadcrumb__inner.is-link:hover {
  color: var(--cm-color-primary);
  cursor: pointer;
}

.cm-breadcrumb__item:last-child .cm-breadcrumb__inner,
.cm-breadcrumb__item:last-child .cm-breadcrumb__inner a,
.cm-breadcrumb__item:last-child .cm-breadcrumb__inner a:hover,
.cm-breadcrumb__item:last-child .cm-breadcrumb__inner:hover {
  font-weight: 400;
  color: var(--cm-text-color-regular);
  cursor: text;
}

.cm-breadcrumb__item:last-child .cm-breadcrumb__separator {
  display: none;
}

.cm-button-group {
  display: inline-block;
  vertical-align: middle;
}

.cm-button-group::after,
.cm-button-group::before {
  display: table;
  content: "";
}

.cm-button-group::after {
  clear: both;
}

.cm-button-group > .cm-button {
  float: left;
  position: relative;
}

.cm-button-group > .cm-button + .cm-button {
  margin-left: 0;
}

.cm-button-group > .cm-button:first-child {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.cm-button-group > .cm-button:last-child {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.cm-button-group > .cm-button:first-child:last-child {
  border-top-right-radius: var(--cm-border-radius-base);
  border-bottom-right-radius: var(--cm-border-radius-base);
  border-top-left-radius: var(--cm-border-radius-base);
  border-bottom-left-radius: var(--cm-border-radius-base);
}

.cm-button-group > .cm-button:first-child:last-child.is-round {
  border-radius: var(--cm-border-radius-round);
}

.cm-button-group > .cm-button:first-child:last-child.is-circle {
  border-radius: 50%;
}

.cm-button-group > .cm-button:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.cm-button-group > .cm-button:not(:last-child) {
  margin-right: -1px;
}

.cm-button-group > .cm-button:active,
.cm-button-group > .cm-button:focus,
.cm-button-group > .cm-button:hover {
  z-index: 1;
}

.cm-button-group > .cm-button.is-active {
  z-index: 1;
}

.cm-button-group > .cm-dropdown > .cm-button {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--primary:first-child {
  border-right-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--primary:last-child {
  border-left-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--primary:not(:first-child):not(:last-child) {
  border-left-color: var(--cm-button-divide-border-color);
  border-right-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--success:first-child {
  border-right-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--success:last-child {
  border-left-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--success:not(:first-child):not(:last-child) {
  border-left-color: var(--cm-button-divide-border-color);
  border-right-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--warning:first-child {
  border-right-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--warning:last-child {
  border-left-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--warning:not(:first-child):not(:last-child) {
  border-left-color: var(--cm-button-divide-border-color);
  border-right-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--danger:first-child {
  border-right-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--danger:last-child {
  border-left-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--danger:not(:first-child):not(:last-child) {
  border-left-color: var(--cm-button-divide-border-color);
  border-right-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--info:first-child {
  border-right-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--info:last-child {
  border-left-color: var(--cm-button-divide-border-color);
}

.cm-button-group .cm-button--info:not(:first-child):not(:last-child) {
  border-left-color: var(--cm-button-divide-border-color);
  border-right-color: var(--cm-button-divide-border-color);
}

.cm-button {
  --cm-button-font-weight: var(--cm-font-weight-primary);
  --cm-button-border-color: var(--cm-border-color);
  --cm-button-bg-color: var(--cm-fill-color-blank);
  --cm-button-text-color: var(--cm-text-color-regular);
  --cm-button-disabled-text-color: var(--cm-disabled-text-color);
  --cm-button-disabled-bg-color: var(--cm-fill-color-blank);
  --cm-button-disabled-border-color: var(--cm-border-color-light);
  --cm-button-divide-border-color: rgba(255, 255, 255, 0.5);
  --cm-button-hover-text-color: var(--cm-color-primary);
  --cm-button-hover-bg-color: var(--cm-color-primary-light-9);
  --cm-button-hover-border-color: var(--cm-color-primary-light-7);
  --cm-button-active-text-color: var(--cm-button-hover-text-color);
  --cm-button-active-border-color: var(--cm-color-primary);
  --cm-button-active-bg-color: var(--cm-button-hover-bg-color);
  --cm-button-outline-color: var(--cm-color-primary-light-5);
  --cm-button-hover-link-text-color: var(--cm-color-info);
  --cm-button-active-color: var(--cm-text-color-primary);
}

.cm-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  height: 32px;
  white-space: nowrap;
  cursor: pointer;
  color: var(--cm-button-text-color);
  text-align: center;
  box-sizing: border-box;
  outline: 0;
  transition: 0.1s;
  font-weight: var(--cm-button-font-weight);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  vertical-align: middle;
  -webkit-appearance: none;
  background-color: var(--cm-button-bg-color);
  border: var(--cm-border);
  border-color: var(--cm-button-border-color);
  padding: 8px 15px;
  font-size: var(--cm-font-size-base);
  border-radius: var(--cm-border-radius-base);
}

.cm-button:focus,
.cm-button:hover {
  color: var(--cm-button-hover-text-color);
  border-color: var(--cm-button-hover-border-color);
  background-color: var(--cm-button-hover-bg-color);
  outline: 0;
}

.cm-button:active {
  color: var(--cm-button-active-text-color);
  border-color: var(--cm-button-active-border-color);
  background-color: var(--cm-button-active-bg-color);
  outline: 0;
}

.cm-button:focus-visible {
  outline: 2px solid var(--cm-button-outline-color);
  outline-offset: 1px;
}

.cm-button > span {
  display: inline-flex;
  align-items: center;
}

.cm-button + .cm-button {
  margin-left: 12px;
}

.cm-button.is-round {
  padding: 8px 15px;
}

.cm-button::-moz-focus-inner {
  border: 0;
}

.cm-button [class*=cm-icon] + span {
  margin-left: 6px;
}

.cm-button [class*=cm-icon] svg {
  vertical-align: bottom;
}

.cm-button.is-plain {
  --cm-button-hover-text-color: var(--cm-color-primary);
  --cm-button-hover-bg-color: var(--cm-fill-color-blank);
  --cm-button-hover-border-color: var(--cm-color-primary);
}

.cm-button.is-active {
  color: var(--cm-button-active-text-color);
  border-color: var(--cm-button-active-border-color);
  background-color: var(--cm-button-active-bg-color);
  outline: 0;
}

.cm-button.is-disabled,
.cm-button.is-disabled:focus,
.cm-button.is-disabled:hover {
  color: var(--cm-button-disabled-text-color);
  cursor: not-allowed;
  background-image: none;
  background-color: var(--cm-button-disabled-bg-color);
  border-color: var(--cm-button-disabled-border-color);
}

.cm-button.is-loading {
  position: relative;
  pointer-events: none;
}

.cm-button.is-loading:before {
  z-index: 1;
  pointer-events: none;
  content: "";
  position: absolute;
  left: -1px;
  top: -1px;
  right: -1px;
  bottom: -1px;
  border-radius: inherit;
  background-color: var(--cm-mask-color-extra-light);
}

.cm-button.is-round {
  border-radius: var(--cm-border-radius-round);
}

.cm-button.is-circle {
  border-radius: 50%;
  padding: 8px;
}

.cm-button.is-text {
  color: var(--cm-button-text-color);
  border: 0 solid transparent;
  background-color: transparent;
}

.cm-button.is-text.is-disabled {
  color: var(--cm-button-disabled-text-color);
  background-color: transparent !important;
}

.cm-button.is-text:not(.is-disabled):focus,
.cm-button.is-text:not(.is-disabled):hover {
  background-color: var(--cm-fill-color-light);
}

.cm-button.is-text:not(.is-disabled):focus-visible {
  outline: 2px solid var(--cm-button-outline-color);
  outline-offset: 1px;
}

.cm-button.is-text:not(.is-disabled):active {
  background-color: var(--cm-fill-color);
}

.cm-button.is-text:not(.is-disabled).is-has-bg {
  background-color: var(--cm-fill-color-light);
}

.cm-button.is-text:not(.is-disabled).is-has-bg:focus,
.cm-button.is-text:not(.is-disabled).is-has-bg:hover {
  background-color: var(--cm-fill-color);
}

.cm-button.is-text:not(.is-disabled).is-has-bg:active {
  background-color: var(--cm-fill-color-dark);
}

.cm-button__text--expand {
  letter-spacing: 0.3em;
  margin-right: -0.3em;
}

.cm-button.is-link {
  border-color: transparent;
  color: var(--cm-button-text-color);
  background: 0 0;
  padding: 2px;
  height: auto;
}

.cm-button.is-link:focus,
.cm-button.is-link:hover {
  color: var(--cm-button-hover-link-text-color);
}

.cm-button.is-link.is-disabled {
  color: var(--cm-button-disabled-text-color);
  background-color: transparent !important;
  border-color: transparent !important;
}

.cm-button.is-link:not(.is-disabled):focus,
.cm-button.is-link:not(.is-disabled):hover {
  border-color: transparent;
  background-color: transparent;
}

.cm-button.is-link:not(.is-disabled):active {
  color: var(--cm-button-active-color);
  border-color: transparent;
  background-color: transparent;
}

.cm-button--text {
  border-color: transparent;
  background: 0 0;
  color: var(--cm-color-primary);
  padding-left: 0;
  padding-right: 0;
}

.cm-button--text.is-disabled {
  color: var(--cm-button-disabled-text-color);
  background-color: transparent !important;
  border-color: transparent !important;
}

.cm-button--text:not(.is-disabled):focus,
.cm-button--text:not(.is-disabled):hover {
  color: var(--cm-color-primary-light-3);
  border-color: transparent;
  background-color: transparent;
}

.cm-button--text:not(.is-disabled):active {
  color: var(--cm-color-primary-dark-2);
  border-color: transparent;
  background-color: transparent;
}

.cm-button__link--expand {
  letter-spacing: 0.3em;
  margin-right: -0.3em;
}

.cm-button--primary {
  --cm-button-text-color: var(--cm-color-white);
  --cm-button-bg-color: var(--cm-color-primary);
  --cm-button-border-color: var(--cm-color-primary);
  --cm-button-outline-color: var(--cm-color-primary-light-5);
  --cm-button-active-color: var(--cm-color-primary-dark-2);
  --cm-button-hover-text-color: var(--cm-color-white);
  --cm-button-hover-link-text-color: var(--cm-color-primary-light-5);
  --cm-button-hover-bg-color: var(--cm-color-primary-light-3);
  --cm-button-hover-border-color: var(--cm-color-primary-light-3);
  --cm-button-active-bg-color: var(--cm-color-primary-dark-2);
  --cm-button-active-border-color: var(--cm-color-primary-dark-2);
  --cm-button-disabled-text-color: var(--cm-color-white);
  --cm-button-disabled-bg-color: var(--cm-color-primary-light-5);
  --cm-button-disabled-border-color: var(--cm-color-primary-light-5);
}

.cm-button--primary.is-link,
.cm-button--primary.is-plain,
.cm-button--primary.is-text {
  --cm-button-text-color: var(--cm-color-primary);
  --cm-button-bg-color: var(--cm-color-primary-light-9);
  --cm-button-border-color: var(--cm-color-primary-light-5);
  --cm-button-hover-text-color: var(--cm-color-white);
  --cm-button-hover-bg-color: var(--cm-color-primary);
  --cm-button-hover-border-color: var(--cm-color-primary);
  --cm-button-active-text-color: var(--cm-color-white);
}

.cm-button--primary.is-link.is-disabled,
.cm-button--primary.is-link.is-disabled:active,
.cm-button--primary.is-link.is-disabled:focus,
.cm-button--primary.is-link.is-disabled:hover,
.cm-button--primary.is-plain.is-disabled,
.cm-button--primary.is-plain.is-disabled:active,
.cm-button--primary.is-plain.is-disabled:focus,
.cm-button--primary.is-plain.is-disabled:hover,
.cm-button--primary.is-text.is-disabled,
.cm-button--primary.is-text.is-disabled:active,
.cm-button--primary.is-text.is-disabled:focus,
.cm-button--primary.is-text.is-disabled:hover {
  color: var(--cm-color-primary-light-5);
  background-color: var(--cm-color-primary-light-9);
  border-color: var(--cm-color-primary-light-8);
}

.cm-button--success {
  --cm-button-text-color: var(--cm-color-white);
  --cm-button-bg-color: var(--cm-color-success);
  --cm-button-border-color: var(--cm-color-success);
  --cm-button-outline-color: var(--cm-color-success-light-5);
  --cm-button-active-color: var(--cm-color-success-dark-2);
  --cm-button-hover-text-color: var(--cm-color-white);
  --cm-button-hover-link-text-color: var(--cm-color-success-light-5);
  --cm-button-hover-bg-color: var(--cm-color-success-light-3);
  --cm-button-hover-border-color: var(--cm-color-success-light-3);
  --cm-button-active-bg-color: var(--cm-color-success-dark-2);
  --cm-button-active-border-color: var(--cm-color-success-dark-2);
  --cm-button-disabled-text-color: var(--cm-color-white);
  --cm-button-disabled-bg-color: var(--cm-color-success-light-5);
  --cm-button-disabled-border-color: var(--cm-color-success-light-5);
}

.cm-button--success.is-link,
.cm-button--success.is-plain,
.cm-button--success.is-text {
  --cm-button-text-color: var(--cm-color-success);
  --cm-button-bg-color: var(--cm-color-success-light-9);
  --cm-button-border-color: var(--cm-color-success-light-5);
  --cm-button-hover-text-color: var(--cm-color-white);
  --cm-button-hover-bg-color: var(--cm-color-success);
  --cm-button-hover-border-color: var(--cm-color-success);
  --cm-button-active-text-color: var(--cm-color-white);
}

.cm-button--success.is-link.is-disabled,
.cm-button--success.is-link.is-disabled:active,
.cm-button--success.is-link.is-disabled:focus,
.cm-button--success.is-link.is-disabled:hover,
.cm-button--success.is-plain.is-disabled,
.cm-button--success.is-plain.is-disabled:active,
.cm-button--success.is-plain.is-disabled:focus,
.cm-button--success.is-plain.is-disabled:hover,
.cm-button--success.is-text.is-disabled,
.cm-button--success.is-text.is-disabled:active,
.cm-button--success.is-text.is-disabled:focus,
.cm-button--success.is-text.is-disabled:hover {
  color: var(--cm-color-success-light-5);
  background-color: var(--cm-color-success-light-9);
  border-color: var(--cm-color-success-light-8);
}

.cm-button--warning {
  --cm-button-text-color: var(--cm-color-white);
  --cm-button-bg-color: var(--cm-color-warning);
  --cm-button-border-color: var(--cm-color-warning);
  --cm-button-outline-color: var(--cm-color-warning-light-5);
  --cm-button-active-color: var(--cm-color-warning-dark-2);
  --cm-button-hover-text-color: var(--cm-color-white);
  --cm-button-hover-link-text-color: var(--cm-color-warning-light-5);
  --cm-button-hover-bg-color: var(--cm-color-warning-light-3);
  --cm-button-hover-border-color: var(--cm-color-warning-light-3);
  --cm-button-active-bg-color: var(--cm-color-warning-dark-2);
  --cm-button-active-border-color: var(--cm-color-warning-dark-2);
  --cm-button-disabled-text-color: var(--cm-color-white);
  --cm-button-disabled-bg-color: var(--cm-color-warning-light-5);
  --cm-button-disabled-border-color: var(--cm-color-warning-light-5);
}

.cm-button--warning.is-link,
.cm-button--warning.is-plain,
.cm-button--warning.is-text {
  --cm-button-text-color: var(--cm-color-warning);
  --cm-button-bg-color: var(--cm-color-warning-light-9);
  --cm-button-border-color: var(--cm-color-warning-light-5);
  --cm-button-hover-text-color: var(--cm-color-white);
  --cm-button-hover-bg-color: var(--cm-color-warning);
  --cm-button-hover-border-color: var(--cm-color-warning);
  --cm-button-active-text-color: var(--cm-color-white);
}

.cm-button--warning.is-link.is-disabled,
.cm-button--warning.is-link.is-disabled:active,
.cm-button--warning.is-link.is-disabled:focus,
.cm-button--warning.is-link.is-disabled:hover,
.cm-button--warning.is-plain.is-disabled,
.cm-button--warning.is-plain.is-disabled:active,
.cm-button--warning.is-plain.is-disabled:focus,
.cm-button--warning.is-plain.is-disabled:hover,
.cm-button--warning.is-text.is-disabled,
.cm-button--warning.is-text.is-disabled:active,
.cm-button--warning.is-text.is-disabled:focus,
.cm-button--warning.is-text.is-disabled:hover {
  color: var(--cm-color-warning-light-5);
  background-color: var(--cm-color-warning-light-9);
  border-color: var(--cm-color-warning-light-8);
}

.cm-button--danger {
  --cm-button-text-color: var(--cm-color-white);
  --cm-button-bg-color: var(--cm-color-danger);
  --cm-button-border-color: var(--cm-color-danger);
  --cm-button-outline-color: var(--cm-color-danger-light-5);
  --cm-button-active-color: var(--cm-color-danger-dark-2);
  --cm-button-hover-text-color: var(--cm-color-white);
  --cm-button-hover-link-text-color: var(--cm-color-danger-light-5);
  --cm-button-hover-bg-color: var(--cm-color-danger-light-3);
  --cm-button-hover-border-color: var(--cm-color-danger-light-3);
  --cm-button-active-bg-color: var(--cm-color-danger-dark-2);
  --cm-button-active-border-color: var(--cm-color-danger-dark-2);
  --cm-button-disabled-text-color: var(--cm-color-white);
  --cm-button-disabled-bg-color: var(--cm-color-danger-light-5);
  --cm-button-disabled-border-color: var(--cm-color-danger-light-5);
}

.cm-button--danger.is-link,
.cm-button--danger.is-plain,
.cm-button--danger.is-text {
  --cm-button-text-color: var(--cm-color-danger);
  --cm-button-bg-color: var(--cm-color-danger-light-9);
  --cm-button-border-color: var(--cm-color-danger-light-5);
  --cm-button-hover-text-color: var(--cm-color-white);
  --cm-button-hover-bg-color: var(--cm-color-danger);
  --cm-button-hover-border-color: var(--cm-color-danger);
  --cm-button-active-text-color: var(--cm-color-white);
}

.cm-button--danger.is-link.is-disabled,
.cm-button--danger.is-link.is-disabled:active,
.cm-button--danger.is-link.is-disabled:focus,
.cm-button--danger.is-link.is-disabled:hover,
.cm-button--danger.is-plain.is-disabled,
.cm-button--danger.is-plain.is-disabled:active,
.cm-button--danger.is-plain.is-disabled:focus,
.cm-button--danger.is-plain.is-disabled:hover,
.cm-button--danger.is-text.is-disabled,
.cm-button--danger.is-text.is-disabled:active,
.cm-button--danger.is-text.is-disabled:focus,
.cm-button--danger.is-text.is-disabled:hover {
  color: var(--cm-color-danger-light-5);
  background-color: var(--cm-color-danger-light-9);
  border-color: var(--cm-color-danger-light-8);
}

.cm-button--info {
  --cm-button-text-color: var(--cm-color-white);
  --cm-button-bg-color: var(--cm-color-info);
  --cm-button-border-color: var(--cm-color-info);
  --cm-button-outline-color: var(--cm-color-info-light-5);
  --cm-button-active-color: var(--cm-color-info-dark-2);
  --cm-button-hover-text-color: var(--cm-color-white);
  --cm-button-hover-link-text-color: var(--cm-color-info-light-5);
  --cm-button-hover-bg-color: var(--cm-color-info-light-3);
  --cm-button-hover-border-color: var(--cm-color-info-light-3);
  --cm-button-active-bg-color: var(--cm-color-info-dark-2);
  --cm-button-active-border-color: var(--cm-color-info-dark-2);
  --cm-button-disabled-text-color: var(--cm-color-white);
  --cm-button-disabled-bg-color: var(--cm-color-info-light-5);
  --cm-button-disabled-border-color: var(--cm-color-info-light-5);
}

.cm-button--info.is-link,
.cm-button--info.is-plain,
.cm-button--info.is-text {
  --cm-button-text-color: var(--cm-color-info);
  --cm-button-bg-color: var(--cm-color-info-light-9);
  --cm-button-border-color: var(--cm-color-info-light-5);
  --cm-button-hover-text-color: var(--cm-color-white);
  --cm-button-hover-bg-color: var(--cm-color-info);
  --cm-button-hover-border-color: var(--cm-color-info);
  --cm-button-active-text-color: var(--cm-color-white);
}

.cm-button--info.is-link.is-disabled,
.cm-button--info.is-link.is-disabled:active,
.cm-button--info.is-link.is-disabled:focus,
.cm-button--info.is-link.is-disabled:hover,
.cm-button--info.is-plain.is-disabled,
.cm-button--info.is-plain.is-disabled:active,
.cm-button--info.is-plain.is-disabled:focus,
.cm-button--info.is-plain.is-disabled:hover,
.cm-button--info.is-text.is-disabled,
.cm-button--info.is-text.is-disabled:active,
.cm-button--info.is-text.is-disabled:focus,
.cm-button--info.is-text.is-disabled:hover {
  color: var(--cm-color-info-light-5);
  background-color: var(--cm-color-info-light-9);
  border-color: var(--cm-color-info-light-8);
}

.cm-button--large {
  --cm-button-size: 40px;
  height: var(--cm-button-size);
  padding: 12px 19px;
  font-size: var(--cm-font-size-base);
  border-radius: var(--cm-border-radius-base);
}

.cm-button--large [class*=cm-icon] + span {
  margin-left: 8px;
}

.cm-button--large.is-round {
  padding: 12px 19px;
}

.cm-button--large.is-circle {
  width: var(--cm-button-size);
  padding: 12px;
}

.cm-button--small {
  --cm-button-size: 24px;
  height: var(--cm-button-size);
  padding: 5px 11px;
  font-size: 12px;
  border-radius: calc(var(--cm-border-radius-base) - 1px);
}

.cm-button--small [class*=cm-icon] + span {
  margin-left: 4px;
}

.cm-button--small.is-round {
  padding: 5px 11px;
}

.cm-button--small.is-circle {
  width: var(--cm-button-size);
  padding: 5px;
}

.cm-calendar {
  --cm-calendar-border: var(
    --cm-table-border,
    1px solid var(--cm-border-color-lighter)
  );
  --cm-calendar-header-border-bottom: var(--cm-calendar-border);
  --cm-calendar-selected-bg-color: var(--cm-color-primary-light-9);
  --cm-calendar-cell-width: 85px;
  background-color: var(--cm-fill-color-blank);
}

.cm-calendar__header {
  display: flex;
  justify-content: space-between;
  padding: 12px 20px;
  border-bottom: var(--cm-calendar-header-border-bottom);
}

.cm-calendar__title {
  color: var(--cm-text-color);
  align-self: center;
}

.cm-calendar__body {
  padding: 12px 20px 35px;
}

.cm-calendar-table {
  table-layout: fixed;
  width: 100%;
}

.cm-calendar-table thead th {
  padding: 12px 0;
  color: var(--cm-text-color-regular);
  font-weight: 400;
}

.cm-calendar-table:not(.is-range) td.next,
.cm-calendar-table:not(.is-range) td.prev {
  color: var(--cm-text-color-placeholder);
}

.cm-calendar-table td {
  border-bottom: var(--cm-calendar-border);
  border-right: var(--cm-calendar-border);
  vertical-align: top;
  transition: background-color var(--cm-transition-duration-fast) ease;
}

.cm-calendar-table td.is-selected {
  background-color: var(--cm-calendar-selected-bg-color);
}

.cm-calendar-table td.is-today {
  color: var(--cm-color-primary);
}

.cm-calendar-table tr:first-child td {
  border-top: var(--cm-calendar-border);
}

.cm-calendar-table tr td:first-child {
  border-left: var(--cm-calendar-border);
}

.cm-calendar-table tr.cm-calendar-table__row--hide-border td {
  border-top: none;
}

.cm-calendar-table .cm-calendar-day {
  box-sizing: border-box;
  padding: 8px;
  height: var(--cm-calendar-cell-width);
}

.cm-calendar-table .cm-calendar-day:hover {
  cursor: pointer;
  background-color: var(--cm-calendar-selected-bg-color);
}

.cm-card {
  --cm-card-border-color: var(--cm-border-color-light);
  --cm-card-border-radius: 4px;
  --cm-card-padding: 20px;
  --cm-card-bg-color: var(--cm-fill-color-blank);
}

.cm-card {
  border-radius: var(--cm-card-border-radius);
  border: 1px solid var(--cm-card-border-color);
  background-color: var(--cm-card-bg-color);
  overflow: hidden;
  color: var(--cm-text-color-primary);
  transition: var(--cm-transition-duration);
}

.cm-card.is-always-shadow {
  box-shadow: var(--cm-box-shadow-light);
}

.cm-card.is-hover-shadow:focus,
.cm-card.is-hover-shadow:hover {
  box-shadow: var(--cm-box-shadow-light);
}

.cm-card__header {
  padding: calc(var(--cm-card-padding) - 2px) var(--cm-card-padding);
  border-bottom: 1px solid var(--cm-card-border-color);
  box-sizing: border-box;
}

.cm-card__body {
  padding: var(--cm-card-padding);
}

.cm-carousel__item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: inline-block;
  overflow: hidden;
  z-index: calc(var(--cm-index-normal) - 1);
}

.cm-carousel__item.is-active {
  z-index: calc(var(--cm-index-normal) - 1);
}

.cm-carousel__item.is-animating {
  transition: transform 0.4s ease-in-out;
}

.cm-carousel__item--card {
  width: 50%;
  transition: transform 0.4s ease-in-out;
}

.cm-carousel__item--card.is-in-stage {
  cursor: pointer;
  z-index: var(--cm-index-normal);
}

.cm-carousel__item--card.is-in-stage.is-hover .cm-carousel__mask,
.cm-carousel__item--card.is-in-stage:hover .cm-carousel__mask {
  opacity: 0.12;
}

.cm-carousel__item--card.is-active {
  z-index: calc(var(--cm-index-normal) + 1);
}

.cm-carousel__item--card-vertical {
  width: 100%;
  height: 50%;
}

.cm-carousel__mask {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: var(--cm-color-white);
  opacity: 0.24;
  transition: var(--cm-transition-duration-fast);
}

.cm-carousel {
  --cm-carouscm-arrow-font-size: 12px;
  --cm-carouscm-arrow-size: 36px;
  --cm-carouscm-arrow-background: rgba(31, 45, 61, 0.11);
  --cm-carouscm-arrow-hover-background: rgba(31, 45, 61, 0.23);
  --cm-carouscm-indicator-width: 30px;
  --cm-carouscm-indicator-height: 2px;
  --cm-carouscm-indicator-padding-horizontal: 4px;
  --cm-carouscm-indicator-padding-vertical: 12px;
  --cm-carouscm-indicator-out-color: var(--cm-border-color-hover);
  position: relative;
}

.cm-carouscm--horizontal {
  overflow: hidden;
}

.cm-carouscm--vertical {
  overflow: hidden;
}

.cm-carousel__container {
  position: relative;
  height: 300px;
}

.cm-carousel__arrow {
  border: none;
  outline: 0;
  padding: 0;
  margin: 0;
  height: var(--cm-carouscm-arrow-size);
  width: var(--cm-carouscm-arrow-size);
  cursor: pointer;
  transition: var(--cm-transition-duration);
  border-radius: 50%;
  background-color: var(--cm-carouscm-arrow-background);
  color: #fff;
  position: absolute;
  top: 50%;
  z-index: 10;
  transform: translateY(-50%);
  text-align: center;
  font-size: var(--cm-carouscm-arrow-font-size);
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.cm-carousel__arrow--left {
  left: 16px;
}

.cm-carousel__arrow--right {
  right: 16px;
}

.cm-carousel__arrow:hover {
  background-color: var(--cm-carouscm-arrow-hover-background);
}

.cm-carousel__arrow i {
  cursor: pointer;
}

.cm-carousel__indicators {
  position: absolute;
  list-style: none;
  margin: 0;
  padding: 0;
  z-index: calc(var(--cm-index-normal) + 1);
}

.cm-carousel__indicators--horizontal {
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.cm-carousel__indicators--vertical {
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.cm-carousel__indicators--outside {
  bottom: calc(var(--cm-carouscm-indicator-height) + var(--cm-carouscm-indicator-padding-vertical) * 2);
  text-align: center;
  position: static;
  transform: none;
}

.cm-carousel__indicators--outside .cm-carousel__indicator:hover button {
  opacity: 0.64;
}

.cm-carousel__indicators--outside button {
  background-color: var(--cm-carouscm-indicator-out-color);
  opacity: 0.24;
}

.cm-carousel__indicators--right {
  right: 0;
}

.cm-carousel__indicators--labels {
  left: 0;
  right: 0;
  transform: none;
  text-align: center;
}

.cm-carousel__indicators--labels .cm-carousel__button {
  height: auto;
  width: auto;
  padding: 2px 18px;
  font-size: 12px;
  color: #000;
}

.cm-carousel__indicators--labels .cm-carousel__indicator {
  padding: 6px 4px;
}

.cm-carousel__indicator {
  background-color: transparent;
  cursor: pointer;
}

.cm-carousel__indicator:hover button {
  opacity: 0.72;
}

.cm-carousel__indicator--horizontal {
  display: inline-block;
  padding: var(--cm-carouscm-indicator-padding-vertical) var(--cm-carouscm-indicator-padding-horizontal);
}

.cm-carousel__indicator--vertical {
  padding: var(--cm-carouscm-indicator-padding-horizontal) var(--cm-carouscm-indicator-padding-vertical);
}

.cm-carousel__indicator--vertical .cm-carousel__button {
  width: var(--cm-carouscm-indicator-height);
  height: calc(var(--cm-carouscm-indicator-width) / 2);
}

.cm-carousel__indicator.is-active button {
  opacity: 1;
}

.cm-carousel__button {
  display: block;
  opacity: 0.48;
  width: var(--cm-carouscm-indicator-width);
  height: var(--cm-carouscm-indicator-height);
  background-color: #fff;
  border: none;
  outline: 0;
  padding: 0;
  margin: 0;
  cursor: pointer;
  transition: var(--cm-transition-duration);
}

.carouscm-arrow-left-enter-from,
.carouscm-arrow-left-leave-active {
  transform: translateY(-50%) translateX(-10px);
  opacity: 0;
}

.carouscm-arrow-right-enter-from,
.carouscm-arrow-right-leave-active {
  transform: translateY(-50%) translateX(10px);
  opacity: 0;
}

.cm-cascader-panel {
  --cm-cascader-menu-text-color: var(--cm-text-color-regular);
  --cm-cascader-menu-selected-text-color: var(--cm-color-primary);
  --cm-cascader-menu-fill: var(--cm-bg-color-overlay);
  --cm-cascader-menu-font-size: var(--cm-font-size-base);
  --cm-cascader-menu-radius: var(--cm-border-radius-base);
  --cm-cascader-menu-border: solid 1px var(--cm-border-color-light);
  --cm-cascader-menu-shadow: var(--cm-box-shadow-light);
  --cm-cascader-node-background-hover: var(--cm-fill-color-light);
  --cm-cascader-node-color-disabled: var(--cm-text-color-placeholder);
  --cm-cascader-color-empty: var(--cm-text-color-placeholder);
  --cm-cascader-tag-background: var(--cm-fill-color);
}

.cm-cascader-panel {
  display: flex;
  border-radius: var(--cm-cascader-menu-radius);
  font-size: var(--cm-cascader-menu-font-size);
}

.cm-cascader-panel.is-bordered {
  border: var(--cm-cascader-menu-border);
  border-radius: var(--cm-cascader-menu-radius);
}

.cm-cascader-menu {
  min-width: 180px;
  box-sizing: border-box;
  color: var(--cm-cascader-menu-text-color);
  border-right: var(--cm-cascader-menu-border);
}

.cm-cascader-menu:last-child {
  border-right: none;
}

.cm-cascader-menu:last-child .cm-cascader-node {
  padding-right: 20px;
}

.cm-cascader-menu__wrap.cm-scrollbar__wrap {
  height: 204px;
}

.cm-cascader-menu__list {
  position: relative;
  min-height: 100%;
  margin: 0;
  padding: 6px 0;
  list-style: none;
  box-sizing: border-box;
}

.cm-cascader-menu__hover-zone {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.cm-cascader-menu__empty-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  color: var(--cm-cascader-color-empty);
}

.cm-cascader-menu__empty-text .is-loading {
  margin-right: 2px;
}

.cm-cascader-node {
  position: relative;
  display: flex;
  align-items: center;
  padding: 0 30px 0 20px;
  height: 34px;
  line-height: 34px;
  outline: 0;
}

.cm-cascader-node.is-selectable.in-active-path {
  color: var(--cm-cascader-menu-text-color);
}

.cm-cascader-node.in-active-path,
.cm-cascader-node.is-active,
.cm-cascader-node.is-selectable.in-checked-path {
  color: var(--cm-cascader-menu-selected-text-color);
  font-weight: 700;
}

.cm-cascader-node:not(.is-disabled) {
  cursor: pointer;
}

.cm-cascader-node:not(.is-disabled):focus,
.cm-cascader-node:not(.is-disabled):hover {
  background: var(--cm-cascader-node-background-hover);
}

.cm-cascader-node.is-disabled {
  color: var(--cm-cascader-node-color-disabled);
  cursor: not-allowed;
}

.cm-cascader-node__prefix {
  position: absolute;
  left: 10px;
}

.cm-cascader-node__postfix {
  position: absolute;
  right: 10px;
}

.cm-cascader-node__label {
  flex: 1;
  text-align: left;
  padding: 0 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cm-cascader-node > .cm-checkbox {
  margin-right: 0;
}

.cm-cascader-node > .cm-radio {
  margin-right: 0;
}

.cm-cascader-node > .cm-radio .cm-radio__label {
  padding-left: 0;
}

.cm-cascader {
  --cm-cascader-menu-text-color: var(--cm-text-color-regular);
  --cm-cascader-menu-selected-text-color: var(--cm-color-primary);
  --cm-cascader-menu-fill: var(--cm-bg-color-overlay);
  --cm-cascader-menu-font-size: var(--cm-font-size-base);
  --cm-cascader-menu-radius: var(--cm-border-radius-base);
  --cm-cascader-menu-border: solid 1px var(--cm-border-color-light);
  --cm-cascader-menu-shadow: var(--cm-box-shadow-light);
  --cm-cascader-node-background-hover: var(--cm-fill-color-light);
  --cm-cascader-node-color-disabled: var(--cm-text-color-placeholder);
  --cm-cascader-color-empty: var(--cm-text-color-placeholder);
  --cm-cascader-tag-background: var(--cm-fill-color);
  display: inline-block;
  vertical-align: middle;
  position: relative;
  font-size: var(--cm-font-size-base);
  line-height: 32px;
  outline: 0;
}

.cm-cascader:not(.is-disabled):hover .cm-input__wrapper {
  cursor: pointer;
  box-shadow: 0 0 0 1px var(--cm-input-hover-border-color) inset;
}

.cm-cascader .cm-input {
  display: flex;
  cursor: pointer;
}

.cm-cascader .cm-input .cm-input__inner {
  text-overflow: ellipsis;
  cursor: pointer;
}

.cm-cascader .cm-input .cm-input__suffix-inner .cm-icon {
  height: calc(100% - 2px);
}

.cm-cascader .cm-input .cm-input__suffix-inner .cm-icon svg {
  vertical-align: middle;
}

.cm-cascader .cm-input .icon-arrow-down {
  transition: transform var(--cm-transition-duration);
  font-size: 14px;
}

.cm-cascader .cm-input .icon-arrow-down.is-reverse {
  transform: rotateZ(180deg);
}

.cm-cascader .cm-input .icon-circle-close:hover {
  color: var(--cm-input-clear-hover-color, var(--cm-text-color-secondary));
}

.cm-cascader .cm-input.is-focus .cm-input__wrapper {
  box-shadow: 0 0 0 1px var(--cm-input-focus-border-color, var(--cm-color-primary)) inset;
}

.cm-cascader--large {
  font-size: 14px;
  line-height: 40px;
}

.cm-cascader--small {
  font-size: 12px;
  line-height: 24px;
}

.cm-cascader.is-disabled .cm-cascader__label {
  z-index: calc(var(--cm-index-normal) + 1);
  color: var(--cm-disabled-text-color);
}

.cm-cascader__dropdown {
  --cm-cascader-menu-text-color: var(--cm-text-color-regular);
  --cm-cascader-menu-selected-text-color: var(--cm-color-primary);
  --cm-cascader-menu-fill: var(--cm-bg-color-overlay);
  --cm-cascader-menu-font-size: var(--cm-font-size-base);
  --cm-cascader-menu-radius: var(--cm-border-radius-base);
  --cm-cascader-menu-border: solid 1px var(--cm-border-color-light);
  --cm-cascader-menu-shadow: var(--cm-box-shadow-light);
  --cm-cascader-node-background-hover: var(--cm-fill-color-light);
  --cm-cascader-node-color-disabled: var(--cm-text-color-placeholder);
  --cm-cascader-color-empty: var(--cm-text-color-placeholder);
  --cm-cascader-tag-background: var(--cm-fill-color);
}

.cm-cascader__dropdown {
  font-size: var(--cm-cascader-menu-font-size);
  border-radius: var(--cm-cascader-menu-radius);
}

.cm-cascader__dropdown.cm-popper {
  background: var(--cm-cascader-menu-fill);
  border: var(--cm-cascader-menu-border);
  box-shadow: var(--cm-cascader-menu-shadow);
}

.cm-cascader__dropdown.cm-popper .cm-popper__arrow::before {
  border: var(--cm-cascader-menu-border);
}

.cm-cascader__dropdown.cm-popper[data-popper-placement^=top] .cm-popper__arrow::before {
  border-top-color: transparent;
  border-left-color: transparent;
}

.cm-cascader__dropdown.cm-popper[data-popper-placement^=bottom] .cm-popper__arrow::before {
  border-bottom-color: transparent;
  border-right-color: transparent;
}

.cm-cascader__dropdown.cm-popper[data-popper-placement^=left] .cm-popper__arrow::before {
  border-left-color: transparent;
  border-bottom-color: transparent;
}

.cm-cascader__dropdown.cm-popper[data-popper-placement^=right] .cm-popper__arrow::before {
  border-right-color: transparent;
  border-top-color: transparent;
}

.cm-cascader__dropdown.cm-popper {
  box-shadow: var(--cm-cascader-menu-shadow);
}

.cm-cascader__tags {
  position: absolute;
  left: 0;
  right: 30px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-wrap: wrap;
  line-height: normal;
  text-align: left;
  box-sizing: border-box;
}

.cm-cascader__tags .cm-tag {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  margin: 2px 0 2px 6px;
  text-overflow: ellipsis;
  background: var(--cm-cascader-tag-background);
}

.cm-cascader__tags .cm-tag:not(.is-hit) {
  border-color: transparent;
}

.cm-cascader__tags .cm-tag > span {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cm-cascader__tags .cm-tag .cm-icon-close {
  flex: none;
  background-color: var(--cm-text-color-placeholder);
  color: var(--cm-color-white);
}

.cm-cascader__tags .cm-tag .cm-icon-close:hover {
  background-color: var(--cm-text-color-secondary);
}

.cm-cascader__collapse-tags {
  white-space: normal;
  z-index: var(--cm-index-normal);
}

.cm-cascader__collapse-tags .cm-tag {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  margin: 2px 0 2px 6px;
  text-overflow: ellipsis;
  background: var(--cm-fill-color);
}

.cm-cascader__collapse-tags .cm-tag:not(.is-hit) {
  border-color: transparent;
}

.cm-cascader__collapse-tags .cm-tag > span {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cm-cascader__collapse-tags .cm-tag .cm-icon-close {
  flex: none;
  background-color: var(--cm-text-color-placeholder);
  color: var(--cm-color-white);
}

.cm-cascader__collapse-tags .cm-tag .cm-icon-close:hover {
  background-color: var(--cm-text-color-secondary);
}

.cm-cascader__suggestion-panel {
  border-radius: var(--cm-cascader-menu-radius);
}

.cm-cascader__suggestion-list {
  max-height: 204px;
  margin: 0;
  padding: 6px 0;
  font-size: var(--cm-font-size-base);
  color: var(--cm-cascader-menu-text-color);
  text-align: center;
}

.cm-cascader__suggestion-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 34px;
  padding: 0 15px;
  text-align: left;
  outline: 0;
  cursor: pointer;
}

.cm-cascader__suggestion-item:focus,
.cm-cascader__suggestion-item:hover {
  background: var(--cm-cascader-node-background-hover);
}

.cm-cascader__suggestion-item.is-checked {
  color: var(--cm-cascader-menu-selected-text-color);
  font-weight: 700;
}

.cm-cascader__suggestion-item > span {
  margin-right: 10px;
}

.cm-cascader__empty-text {
  margin: 10px 0;
  color: var(--cm-cascader-color-empty);
}

.cm-cascader__search-input {
  flex: 1;
  height: 24px;
  min-width: 60px;
  margin: 2px 0 2px 11px;
  padding: 0;
  color: var(--cm-cascader-menu-text-color);
  border: none;
  outline: 0;
  box-sizing: border-box;
  background: 0 0;
}

.cm-cascader__search-input::-moz-placeholder {
  color: transparent;
}

.cm-cascader__search-input:-ms-input-placeholder {
  color: transparent;
}

.cm-cascader__search-input::placeholder {
  color: transparent;
}

.cm-check-tag {
  background-color: var(--cm-color-info-light-9);
  border-radius: var(--cm-border-radius-base);
  color: var(--cm-color-info);
  cursor: pointer;
  display: inline-block;
  font-size: var(--cm-font-size-base);
  line-height: var(--cm-font-size-base);
  padding: 7px 15px;
  transition: var(--cm-transition-all);
  font-weight: 700;
}

.cm-check-tag:hover {
  background-color: var(--cm-color-info-light-7);
}

.cm-check-tag.is-checked {
  background-color: var(--cm-color-primary-light-8);
  color: var(--cm-color-primary);
}

.cm-check-tag.is-checked:hover {
  background-color: var(--cm-color-primary-light-7);
}

.cm-checkbox-button {
  --cm-checkbox-button-checked-bg-color: var(--cm-color-primary);
  --cm-checkbox-button-checked-text-color: var(--cm-color-white);
  --cm-checkbox-button-checked-border-color: var(--cm-color-primary);
}

.cm-checkbox-button {
  position: relative;
  display: inline-block;
}

.cm-checkbox-button__inner {
  display: inline-block;
  line-height: 1;
  font-weight: var(--cm-checkbox-font-weight);
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  background: var(--cm-button-bg-color, var(--cm-fill-color-blank));
  border: var(--cm-border);
  border-left-color: transparent;
  color: var(--cm-button-text-color, var(--cm-text-color-regular));
  -webkit-appearance: none;
  text-align: center;
  box-sizing: border-box;
  outline: 0;
  margin: 0;
  position: relative;
  transition: var(--cm-transition-all);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  padding: 8px 15px;
  font-size: var(--cm-font-size-base);
  border-radius: 0;
}

.cm-checkbox-button__inner.is-round {
  padding: 8px 15px;
}

.cm-checkbox-button__inner:hover {
  color: var(--cm-color-primary);
}

.cm-checkbox-button__inner [class*=cm-icon-] {
  line-height: 0.9;
}

.cm-checkbox-button__inner [class*=cm-icon-] + span {
  margin-left: 5px;
}

.cm-checkbox-button__original {
  opacity: 0;
  outline: 0;
  position: absolute;
  margin: 0;
  z-index: -1;
}

.cm-checkbox-button.is-checked .cm-checkbox-button__inner {
  color: var(--cm-checkbox-button-checked-text-color);
  background-color: var(--cm-checkbox-button-checked-bg-color);
  border-color: var(--cm-checkbox-button-checked-border-color);
  box-shadow: -1px 0 0 0 var(--cm-color-primary-light-7);
}

.cm-checkbox-button.is-checked:first-child .cm-checkbox-button__inner {
  border-left-color: var(--cm-checkbox-button-checked-border-color);
}

.cm-checkbox-button.is-disabled .cm-checkbox-button__inner {
  color: var(--cm-disabled-text-color);
  cursor: not-allowed;
  background-image: none;
  background-color: var(--cm-button-disabled-bg-color, var(--cm-fill-color-blank));
  border-color: var(--cm-button-disabled-border-color, var(--cm-border-color-light));
  box-shadow: none;
}

.cm-checkbox-button.is-disabled:first-child .cm-checkbox-button__inner {
  border-left-color: var(--cm-button-disabled-border-color, var(--cm-border-color-light));
}

.cm-checkbox-button:first-child .cm-checkbox-button__inner {
  border-left: var(--cm-border);
  border-top-left-radius: var(--cm-border-radius-base);
  border-bottom-left-radius: var(--cm-border-radius-base);
  box-shadow: none !important;
}

.cm-checkbox-button.is-focus .cm-checkbox-button__inner {
  border-color: var(--cm-checkbox-button-checked-border-color);
}

.cm-checkbox-button:last-child .cm-checkbox-button__inner {
  border-top-right-radius: var(--cm-border-radius-base);
  border-bottom-right-radius: var(--cm-border-radius-base);
}

.cm-checkbox-button--large .cm-checkbox-button__inner {
  padding: 12px 19px;
  font-size: var(--cm-font-size-base);
  border-radius: 0;
}

.cm-checkbox-button--large .cm-checkbox-button__inner.is-round {
  padding: 12px 19px;
}

.cm-checkbox-button--small .cm-checkbox-button__inner {
  padding: 5px 11px;
  font-size: 12px;
  border-radius: 0;
}

.cm-checkbox-button--small .cm-checkbox-button__inner.is-round {
  padding: 5px 11px;
}

.cm-checkbox-group {
  font-size: 0;
  line-height: 0;
}

.cm-checkbox {
  --cm-checkbox-font-size: 14px;
  --cm-checkbox-font-weight: var(--cm-font-weight-primary);
  --cm-checkbox-text-color: var(--cm-text-color-regular);
  --cm-checkbox-input-height: 14px;
  --cm-checkbox-input-width: 14px;
  --cm-checkbox-border-radius: var(--cm-border-radius-small);
  --cm-checkbox-bg-color: var(--cm-fill-color-blank);
  --cm-checkbox-input-border: var(--cm-border);
  --cm-checkbox-disabled-border-color: var(--cm-border-color);
  --cm-checkbox-disabled-input-fill: var(--cm-fill-color-light);
  --cm-checkbox-disabled-icon-color: var(--cm-text-color-placeholder);
  --cm-checkbox-disabled-checked-input-fill: var(--cm-border-color-extra-light);
  --cm-checkbox-disabled-checked-input-border-color: var(--cm-border-color);
  --cm-checkbox-disabled-checked-icon-color: var(--cm-text-color-placeholder);
  --cm-checkbox-checked-text-color: var(--cm-color-primary);
  --cm-checkbox-checked-input-border-color: var(--cm-color-primary);
  --cm-checkbox-checked-bg-color: var(--cm-color-primary);
  --cm-checkbox-checked-icon-color: var(--cm-color-white);
  --cm-checkbox-input-border-color-hover: var(--cm-color-primary);
}

.cm-checkbox {
  color: var(--cm-checkbox-text-color);
  font-weight: var(--cm-checkbox-font-weight);
  font-size: var(--cm-font-size-base);
  position: relative;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin-right: 30px;
  height: 32px;
}

.cm-checkbox.is-disabled {
  cursor: not-allowed;
}

.cm-checkbox.is-bordered {
  padding: 0 15px 0 9px;
  border-radius: var(--cm-border-radius-base);
  border: var(--cm-border);
  box-sizing: border-box;
}

.cm-checkbox.is-bordered.is-checked {
  border-color: var(--cm-color-primary);
}

.cm-checkbox.is-bordered.is-disabled {
  border-color: var(--cm-border-color-lighter);
}

.cm-checkbox.is-bordered.cm-checkbox--large {
  padding: 0 19px 0 11px;
  border-radius: var(--cm-border-radius-base);
}

.cm-checkbox.is-bordered.cm-checkbox--large .cm-checkbox__label {
  font-size: var(--cm-font-size-base);
}

.cm-checkbox.is-bordered.cm-checkbox--large .cm-checkbox__inner {
  height: 14px;
  width: 14px;
}

.cm-checkbox.is-bordered.cm-checkbox--small {
  padding: 0 11px 0 7px;
  border-radius: calc(var(--cm-border-radius-base) - 1px);
}

.cm-checkbox.is-bordered.cm-checkbox--small .cm-checkbox__label {
  font-size: 12px;
}

.cm-checkbox.is-bordered.cm-checkbox--small .cm-checkbox__inner {
  height: 12px;
  width: 12px;
}

.cm-checkbox.is-bordered.cm-checkbox--small .cm-checkbox__inner::after {
  height: 6px;
  width: 2px;
}

.cm-checkbox input:focus-visible + .cm-checkbox__inner {
  outline: 2px solid var(--cm-checkbox-input-border-color-hover);
  outline-offset: 1px;
  border-radius: var(--cm-checkbox-border-radius);
}

.cm-checkbox__input {
  white-space: nowrap;
  cursor: pointer;
  outline: 0;
  display: inline-flex;
  position: relative;
}

.cm-checkbox__input.is-disabled .cm-checkbox__inner {
  background-color: var(--cm-checkbox-disabled-input-fill);
  border-color: var(--cm-checkbox-disabled-border-color);
  cursor: not-allowed;
}

.cm-checkbox__input.is-disabled .cm-checkbox__inner::after {
  cursor: not-allowed;
  border-color: var(--cm-checkbox-disabled-icon-color);
}

.cm-checkbox__input.is-disabled.is-checked .cm-checkbox__inner {
  background-color: var(--cm-checkbox-disabled-checked-input-fill);
  border-color: var(--cm-checkbox-disabled-checked-input-border-color);
}

.cm-checkbox__input.is-disabled.is-checked .cm-checkbox__inner::after {
  border-color: var(--cm-checkbox-disabled-checked-icon-color);
}

.cm-checkbox__input.is-disabled.is-indeterminate .cm-checkbox__inner {
  background-color: var(--cm-checkbox-disabled-checked-input-fill);
  border-color: var(--cm-checkbox-disabled-checked-input-border-color);
}

.cm-checkbox__input.is-disabled.is-indeterminate .cm-checkbox__inner::before {
  background-color: var(--cm-checkbox-disabled-checked-icon-color);
  border-color: var(--cm-checkbox-disabled-checked-icon-color);
}

.cm-checkbox__input.is-disabled + span.cm-checkbox__label {
  color: var(--cm-disabled-text-color);
  cursor: not-allowed;
}

.cm-checkbox__input.is-checked .cm-checkbox__inner {
  background-color: var(--cm-checkbox-checked-bg-color);
  border-color: var(--cm-checkbox-checked-input-border-color);
}

.cm-checkbox__input.is-checked .cm-checkbox__inner::after {
  transform: rotate(45deg) scaleY(1);
}

.cm-checkbox__input.is-checked + .cm-checkbox__label {
  color: var(--cm-checkbox-checked-text-color);
}

.cm-checkbox__input.is-focus:not(.is-checked) .cm-checkbox__original:not(:focus-visible) {
  border-color: var(--cm-checkbox-input-border-color-hover);
}

.cm-checkbox__input.is-indeterminate .cm-checkbox__inner {
  background-color: var(--cm-checkbox-checked-bg-color);
  border-color: var(--cm-checkbox-checked-input-border-color);
}

.cm-checkbox__input.is-indeterminate .cm-checkbox__inner::before {
  content: "";
  position: absolute;
  display: block;
  background-color: var(--cm-checkbox-checked-icon-color);
  height: 2px;
  transform: scale(0.5);
  left: 0;
  right: 0;
  top: 5px;
}

.cm-checkbox__input.is-indeterminate .cm-checkbox__inner::after {
  display: none;
}

.cm-checkbox__inner {
  display: inline-block;
  position: relative;
  border: var(--cm-checkbox-input-border);
  border-radius: var(--cm-checkbox-border-radius);
  box-sizing: border-box;
  width: var(--cm-checkbox-input-width);
  height: var(--cm-checkbox-input-height);
  background-color: var(--cm-checkbox-bg-color);
  z-index: var(--cm-index-normal);
  transition: border-color 0.25s cubic-bezier(0.71, -0.46, 0.29, 1.46), background-color 0.25s cubic-bezier(0.71, -0.46, 0.29, 1.46), outline 0.25s cubic-bezier(0.71, -0.46, 0.29, 1.46);
}

.cm-checkbox__inner:hover {
  border-color: var(--cm-checkbox-input-border-color-hover);
}

.cm-checkbox__inner::after {
  box-sizing: content-box;
  content: "";
  border: 1px solid var(--cm-checkbox-checked-icon-color);
  border-left: 0;
  border-top: 0;
  height: 7px;
  left: 4px;
  position: absolute;
  top: 1px;
  transform: rotate(45deg) scaleY(0);
  width: 3px;
  transition: transform 0.15s ease-in 50ms;
  transform-origin: center;
}

.cm-checkbox__original {
  opacity: 0;
  outline: 0;
  position: absolute;
  margin: 0;
  width: 0;
  height: 0;
  z-index: -1;
}

.cm-checkbox__label {
  display: inline-block;
  padding-left: 8px;
  line-height: 1;
  font-size: var(--cm-checkbox-font-size);
}

.cm-checkbox.cm-checkbox--large {
  height: 40px;
}

.cm-checkbox.cm-checkbox--large .cm-checkbox__label {
  font-size: 14px;
}

.cm-checkbox.cm-checkbox--large .cm-checkbox__inner {
  width: 14px;
  height: 14px;
}

.cm-checkbox.cm-checkbox--small {
  height: 24px;
}

.cm-checkbox.cm-checkbox--small .cm-checkbox__label {
  font-size: 12px;
}

.cm-checkbox.cm-checkbox--small .cm-checkbox__inner {
  width: 12px;
  height: 12px;
}

.cm-checkbox.cm-checkbox--small .cm-checkbox__input.is-indeterminate .cm-checkbox__inner::before {
  top: 4px;
}

.cm-checkbox.cm-checkbox--small .cm-checkbox__inner::after {
  width: 2px;
  height: 6px;
}

.cm-checkbox:last-of-type {
  margin-right: 0;
}

[class*=cm-col-] {
  box-sizing: border-box;
}

[class*=cm-col-].is-guttered {
  display: block;
  min-height: 1px;
}

.cm-col-0 {
  display: none;
}

.cm-col-0.is-guttered {
  display: none;
}

.cm-col-0 {
  max-width: 0%;
  flex: 0 0 0%;
}

.cm-col-offset-0 {
  margin-left: 0;
}

.cm-col-pull-0 {
  position: relative;
  right: 0;
}

.cm-col-push-0 {
  position: relative;
  left: 0;
}

.cm-col-1 {
  max-width: 4.1666666667%;
  flex: 0 0 4.1666666667%;
}

.cm-col-offset-1 {
  margin-left: 4.1666666667%;
}

.cm-col-pull-1 {
  position: relative;
  right: 4.1666666667%;
}

.cm-col-push-1 {
  position: relative;
  left: 4.1666666667%;
}

.cm-col-2 {
  max-width: 8.3333333333%;
  flex: 0 0 8.3333333333%;
}

.cm-col-offset-2 {
  margin-left: 8.3333333333%;
}

.cm-col-pull-2 {
  position: relative;
  right: 8.3333333333%;
}

.cm-col-push-2 {
  position: relative;
  left: 8.3333333333%;
}

.cm-col-3 {
  max-width: 12.5%;
  flex: 0 0 12.5%;
}

.cm-col-offset-3 {
  margin-left: 12.5%;
}

.cm-col-pull-3 {
  position: relative;
  right: 12.5%;
}

.cm-col-push-3 {
  position: relative;
  left: 12.5%;
}

.cm-col-4 {
  max-width: 16.6666666667%;
  flex: 0 0 16.6666666667%;
}

.cm-col-offset-4 {
  margin-left: 16.6666666667%;
}

.cm-col-pull-4 {
  position: relative;
  right: 16.6666666667%;
}

.cm-col-push-4 {
  position: relative;
  left: 16.6666666667%;
}

.cm-col-5 {
  max-width: 20.8333333333%;
  flex: 0 0 20.8333333333%;
}

.cm-col-offset-5 {
  margin-left: 20.8333333333%;
}

.cm-col-pull-5 {
  position: relative;
  right: 20.8333333333%;
}

.cm-col-push-5 {
  position: relative;
  left: 20.8333333333%;
}

.cm-col-6 {
  max-width: 25%;
  flex: 0 0 25%;
}

.cm-col-offset-6 {
  margin-left: 25%;
}

.cm-col-pull-6 {
  position: relative;
  right: 25%;
}

.cm-col-push-6 {
  position: relative;
  left: 25%;
}

.cm-col-7 {
  max-width: 29.1666666667%;
  flex: 0 0 29.1666666667%;
}

.cm-col-offset-7 {
  margin-left: 29.1666666667%;
}

.cm-col-pull-7 {
  position: relative;
  right: 29.1666666667%;
}

.cm-col-push-7 {
  position: relative;
  left: 29.1666666667%;
}

.cm-col-8 {
  max-width: 33.3333333333%;
  flex: 0 0 33.3333333333%;
}

.cm-col-offset-8 {
  margin-left: 33.3333333333%;
}

.cm-col-pull-8 {
  position: relative;
  right: 33.3333333333%;
}

.cm-col-push-8 {
  position: relative;
  left: 33.3333333333%;
}

.cm-col-9 {
  max-width: 37.5%;
  flex: 0 0 37.5%;
}

.cm-col-offset-9 {
  margin-left: 37.5%;
}

.cm-col-pull-9 {
  position: relative;
  right: 37.5%;
}

.cm-col-push-9 {
  position: relative;
  left: 37.5%;
}

.cm-col-10 {
  max-width: 41.6666666667%;
  flex: 0 0 41.6666666667%;
}

.cm-col-offset-10 {
  margin-left: 41.6666666667%;
}

.cm-col-pull-10 {
  position: relative;
  right: 41.6666666667%;
}

.cm-col-push-10 {
  position: relative;
  left: 41.6666666667%;
}

.cm-col-11 {
  max-width: 45.8333333333%;
  flex: 0 0 45.8333333333%;
}

.cm-col-offset-11 {
  margin-left: 45.8333333333%;
}

.cm-col-pull-11 {
  position: relative;
  right: 45.8333333333%;
}

.cm-col-push-11 {
  position: relative;
  left: 45.8333333333%;
}

.cm-col-12 {
  max-width: 50%;
  flex: 0 0 50%;
}

.cm-col-offset-12 {
  margin-left: 50%;
}

.cm-col-pull-12 {
  position: relative;
  right: 50%;
}

.cm-col-push-12 {
  position: relative;
  left: 50%;
}

.cm-col-13 {
  max-width: 54.1666666667%;
  flex: 0 0 54.1666666667%;
}

.cm-col-offset-13 {
  margin-left: 54.1666666667%;
}

.cm-col-pull-13 {
  position: relative;
  right: 54.1666666667%;
}

.cm-col-push-13 {
  position: relative;
  left: 54.1666666667%;
}

.cm-col-14 {
  max-width: 58.3333333333%;
  flex: 0 0 58.3333333333%;
}

.cm-col-offset-14 {
  margin-left: 58.3333333333%;
}

.cm-col-pull-14 {
  position: relative;
  right: 58.3333333333%;
}

.cm-col-push-14 {
  position: relative;
  left: 58.3333333333%;
}

.cm-col-15 {
  max-width: 62.5%;
  flex: 0 0 62.5%;
}

.cm-col-offset-15 {
  margin-left: 62.5%;
}

.cm-col-pull-15 {
  position: relative;
  right: 62.5%;
}

.cm-col-push-15 {
  position: relative;
  left: 62.5%;
}

.cm-col-16 {
  max-width: 66.6666666667%;
  flex: 0 0 66.6666666667%;
}

.cm-col-offset-16 {
  margin-left: 66.6666666667%;
}

.cm-col-pull-16 {
  position: relative;
  right: 66.6666666667%;
}

.cm-col-push-16 {
  position: relative;
  left: 66.6666666667%;
}

.cm-col-17 {
  max-width: 70.8333333333%;
  flex: 0 0 70.8333333333%;
}

.cm-col-offset-17 {
  margin-left: 70.8333333333%;
}

.cm-col-pull-17 {
  position: relative;
  right: 70.8333333333%;
}

.cm-col-push-17 {
  position: relative;
  left: 70.8333333333%;
}

.cm-col-18 {
  max-width: 75%;
  flex: 0 0 75%;
}

.cm-col-offset-18 {
  margin-left: 75%;
}

.cm-col-pull-18 {
  position: relative;
  right: 75%;
}

.cm-col-push-18 {
  position: relative;
  left: 75%;
}

.cm-col-19 {
  max-width: 79.1666666667%;
  flex: 0 0 79.1666666667%;
}

.cm-col-offset-19 {
  margin-left: 79.1666666667%;
}

.cm-col-pull-19 {
  position: relative;
  right: 79.1666666667%;
}

.cm-col-push-19 {
  position: relative;
  left: 79.1666666667%;
}

.cm-col-20 {
  max-width: 83.3333333333%;
  flex: 0 0 83.3333333333%;
}

.cm-col-offset-20 {
  margin-left: 83.3333333333%;
}

.cm-col-pull-20 {
  position: relative;
  right: 83.3333333333%;
}

.cm-col-push-20 {
  position: relative;
  left: 83.3333333333%;
}

.cm-col-21 {
  max-width: 87.5%;
  flex: 0 0 87.5%;
}

.cm-col-offset-21 {
  margin-left: 87.5%;
}

.cm-col-pull-21 {
  position: relative;
  right: 87.5%;
}

.cm-col-push-21 {
  position: relative;
  left: 87.5%;
}

.cm-col-22 {
  max-width: 91.6666666667%;
  flex: 0 0 91.6666666667%;
}

.cm-col-offset-22 {
  margin-left: 91.6666666667%;
}

.cm-col-pull-22 {
  position: relative;
  right: 91.6666666667%;
}

.cm-col-push-22 {
  position: relative;
  left: 91.6666666667%;
}

.cm-col-23 {
  max-width: 95.8333333333%;
  flex: 0 0 95.8333333333%;
}

.cm-col-offset-23 {
  margin-left: 95.8333333333%;
}

.cm-col-pull-23 {
  position: relative;
  right: 95.8333333333%;
}

.cm-col-push-23 {
  position: relative;
  left: 95.8333333333%;
}

.cm-col-24 {
  max-width: 100%;
  flex: 0 0 100%;
}

.cm-col-offset-24 {
  margin-left: 100%;
}

.cm-col-pull-24 {
  position: relative;
  right: 100%;
}

.cm-col-push-24 {
  position: relative;
  left: 100%;
}

@media only screen and (max-width: 768px) {
  .cm-col-xs-0 {
    display: none;
  }
  .cm-col-xs-0.is-guttered {
    display: none;
  }
  .cm-col-xs-0 {
    max-width: 0%;
    flex: 0 0 0%;
  }
  .cm-col-xs-offset-0 {
    margin-left: 0;
  }
  .cm-col-xs-pull-0 {
    position: relative;
    right: 0;
  }
  .cm-col-xs-push-0 {
    position: relative;
    left: 0;
  }
  .cm-col-xs-1 {
    display: block;
    max-width: 4.1666666667%;
    flex: 0 0 4.1666666667%;
  }
  .cm-col-xs-offset-1 {
    margin-left: 4.1666666667%;
  }
  .cm-col-xs-pull-1 {
    position: relative;
    right: 4.1666666667%;
  }
  .cm-col-xs-push-1 {
    position: relative;
    left: 4.1666666667%;
  }
  .cm-col-xs-2 {
    display: block;
    max-width: 8.3333333333%;
    flex: 0 0 8.3333333333%;
  }
  .cm-col-xs-offset-2 {
    margin-left: 8.3333333333%;
  }
  .cm-col-xs-pull-2 {
    position: relative;
    right: 8.3333333333%;
  }
  .cm-col-xs-push-2 {
    position: relative;
    left: 8.3333333333%;
  }
  .cm-col-xs-3 {
    display: block;
    max-width: 12.5%;
    flex: 0 0 12.5%;
  }
  .cm-col-xs-offset-3 {
    margin-left: 12.5%;
  }
  .cm-col-xs-pull-3 {
    position: relative;
    right: 12.5%;
  }
  .cm-col-xs-push-3 {
    position: relative;
    left: 12.5%;
  }
  .cm-col-xs-4 {
    display: block;
    max-width: 16.6666666667%;
    flex: 0 0 16.6666666667%;
  }
  .cm-col-xs-offset-4 {
    margin-left: 16.6666666667%;
  }
  .cm-col-xs-pull-4 {
    position: relative;
    right: 16.6666666667%;
  }
  .cm-col-xs-push-4 {
    position: relative;
    left: 16.6666666667%;
  }
  .cm-col-xs-5 {
    display: block;
    max-width: 20.8333333333%;
    flex: 0 0 20.8333333333%;
  }
  .cm-col-xs-offset-5 {
    margin-left: 20.8333333333%;
  }
  .cm-col-xs-pull-5 {
    position: relative;
    right: 20.8333333333%;
  }
  .cm-col-xs-push-5 {
    position: relative;
    left: 20.8333333333%;
  }
  .cm-col-xs-6 {
    display: block;
    max-width: 25%;
    flex: 0 0 25%;
  }
  .cm-col-xs-offset-6 {
    margin-left: 25%;
  }
  .cm-col-xs-pull-6 {
    position: relative;
    right: 25%;
  }
  .cm-col-xs-push-6 {
    position: relative;
    left: 25%;
  }
  .cm-col-xs-7 {
    display: block;
    max-width: 29.1666666667%;
    flex: 0 0 29.1666666667%;
  }
  .cm-col-xs-offset-7 {
    margin-left: 29.1666666667%;
  }
  .cm-col-xs-pull-7 {
    position: relative;
    right: 29.1666666667%;
  }
  .cm-col-xs-push-7 {
    position: relative;
    left: 29.1666666667%;
  }
  .cm-col-xs-8 {
    display: block;
    max-width: 33.3333333333%;
    flex: 0 0 33.3333333333%;
  }
  .cm-col-xs-offset-8 {
    margin-left: 33.3333333333%;
  }
  .cm-col-xs-pull-8 {
    position: relative;
    right: 33.3333333333%;
  }
  .cm-col-xs-push-8 {
    position: relative;
    left: 33.3333333333%;
  }
  .cm-col-xs-9 {
    display: block;
    max-width: 37.5%;
    flex: 0 0 37.5%;
  }
  .cm-col-xs-offset-9 {
    margin-left: 37.5%;
  }
  .cm-col-xs-pull-9 {
    position: relative;
    right: 37.5%;
  }
  .cm-col-xs-push-9 {
    position: relative;
    left: 37.5%;
  }
  .cm-col-xs-10 {
    display: block;
    max-width: 41.6666666667%;
    flex: 0 0 41.6666666667%;
  }
  .cm-col-xs-offset-10 {
    margin-left: 41.6666666667%;
  }
  .cm-col-xs-pull-10 {
    position: relative;
    right: 41.6666666667%;
  }
  .cm-col-xs-push-10 {
    position: relative;
    left: 41.6666666667%;
  }
  .cm-col-xs-11 {
    display: block;
    max-width: 45.8333333333%;
    flex: 0 0 45.8333333333%;
  }
  .cm-col-xs-offset-11 {
    margin-left: 45.8333333333%;
  }
  .cm-col-xs-pull-11 {
    position: relative;
    right: 45.8333333333%;
  }
  .cm-col-xs-push-11 {
    position: relative;
    left: 45.8333333333%;
  }
  .cm-col-xs-12 {
    display: block;
    max-width: 50%;
    flex: 0 0 50%;
  }
  .cm-col-xs-offset-12 {
    margin-left: 50%;
  }
  .cm-col-xs-pull-12 {
    position: relative;
    right: 50%;
  }
  .cm-col-xs-push-12 {
    position: relative;
    left: 50%;
  }
  .cm-col-xs-13 {
    display: block;
    max-width: 54.1666666667%;
    flex: 0 0 54.1666666667%;
  }
  .cm-col-xs-offset-13 {
    margin-left: 54.1666666667%;
  }
  .cm-col-xs-pull-13 {
    position: relative;
    right: 54.1666666667%;
  }
  .cm-col-xs-push-13 {
    position: relative;
    left: 54.1666666667%;
  }
  .cm-col-xs-14 {
    display: block;
    max-width: 58.3333333333%;
    flex: 0 0 58.3333333333%;
  }
  .cm-col-xs-offset-14 {
    margin-left: 58.3333333333%;
  }
  .cm-col-xs-pull-14 {
    position: relative;
    right: 58.3333333333%;
  }
  .cm-col-xs-push-14 {
    position: relative;
    left: 58.3333333333%;
  }
  .cm-col-xs-15 {
    display: block;
    max-width: 62.5%;
    flex: 0 0 62.5%;
  }
  .cm-col-xs-offset-15 {
    margin-left: 62.5%;
  }
  .cm-col-xs-pull-15 {
    position: relative;
    right: 62.5%;
  }
  .cm-col-xs-push-15 {
    position: relative;
    left: 62.5%;
  }
  .cm-col-xs-16 {
    display: block;
    max-width: 66.6666666667%;
    flex: 0 0 66.6666666667%;
  }
  .cm-col-xs-offset-16 {
    margin-left: 66.6666666667%;
  }
  .cm-col-xs-pull-16 {
    position: relative;
    right: 66.6666666667%;
  }
  .cm-col-xs-push-16 {
    position: relative;
    left: 66.6666666667%;
  }
  .cm-col-xs-17 {
    display: block;
    max-width: 70.8333333333%;
    flex: 0 0 70.8333333333%;
  }
  .cm-col-xs-offset-17 {
    margin-left: 70.8333333333%;
  }
  .cm-col-xs-pull-17 {
    position: relative;
    right: 70.8333333333%;
  }
  .cm-col-xs-push-17 {
    position: relative;
    left: 70.8333333333%;
  }
  .cm-col-xs-18 {
    display: block;
    max-width: 75%;
    flex: 0 0 75%;
  }
  .cm-col-xs-offset-18 {
    margin-left: 75%;
  }
  .cm-col-xs-pull-18 {
    position: relative;
    right: 75%;
  }
  .cm-col-xs-push-18 {
    position: relative;
    left: 75%;
  }
  .cm-col-xs-19 {
    display: block;
    max-width: 79.1666666667%;
    flex: 0 0 79.1666666667%;
  }
  .cm-col-xs-offset-19 {
    margin-left: 79.1666666667%;
  }
  .cm-col-xs-pull-19 {
    position: relative;
    right: 79.1666666667%;
  }
  .cm-col-xs-push-19 {
    position: relative;
    left: 79.1666666667%;
  }
  .cm-col-xs-20 {
    display: block;
    max-width: 83.3333333333%;
    flex: 0 0 83.3333333333%;
  }
  .cm-col-xs-offset-20 {
    margin-left: 83.3333333333%;
  }
  .cm-col-xs-pull-20 {
    position: relative;
    right: 83.3333333333%;
  }
  .cm-col-xs-push-20 {
    position: relative;
    left: 83.3333333333%;
  }
  .cm-col-xs-21 {
    display: block;
    max-width: 87.5%;
    flex: 0 0 87.5%;
  }
  .cm-col-xs-offset-21 {
    margin-left: 87.5%;
  }
  .cm-col-xs-pull-21 {
    position: relative;
    right: 87.5%;
  }
  .cm-col-xs-push-21 {
    position: relative;
    left: 87.5%;
  }
  .cm-col-xs-22 {
    display: block;
    max-width: 91.6666666667%;
    flex: 0 0 91.6666666667%;
  }
  .cm-col-xs-offset-22 {
    margin-left: 91.6666666667%;
  }
  .cm-col-xs-pull-22 {
    position: relative;
    right: 91.6666666667%;
  }
  .cm-col-xs-push-22 {
    position: relative;
    left: 91.6666666667%;
  }
  .cm-col-xs-23 {
    display: block;
    max-width: 95.8333333333%;
    flex: 0 0 95.8333333333%;
  }
  .cm-col-xs-offset-23 {
    margin-left: 95.8333333333%;
  }
  .cm-col-xs-pull-23 {
    position: relative;
    right: 95.8333333333%;
  }
  .cm-col-xs-push-23 {
    position: relative;
    left: 95.8333333333%;
  }
  .cm-col-xs-24 {
    display: block;
    max-width: 100%;
    flex: 0 0 100%;
  }
  .cm-col-xs-offset-24 {
    margin-left: 100%;
  }
  .cm-col-xs-pull-24 {
    position: relative;
    right: 100%;
  }
  .cm-col-xs-push-24 {
    position: relative;
    left: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .cm-col-sm-0 {
    display: none;
  }
  .cm-col-sm-0.is-guttered {
    display: none;
  }
  .cm-col-sm-0 {
    max-width: 0%;
    flex: 0 0 0%;
  }
  .cm-col-sm-offset-0 {
    margin-left: 0;
  }
  .cm-col-sm-pull-0 {
    position: relative;
    right: 0;
  }
  .cm-col-sm-push-0 {
    position: relative;
    left: 0;
  }
  .cm-col-sm-1 {
    display: block;
    max-width: 4.1666666667%;
    flex: 0 0 4.1666666667%;
  }
  .cm-col-sm-offset-1 {
    margin-left: 4.1666666667%;
  }
  .cm-col-sm-pull-1 {
    position: relative;
    right: 4.1666666667%;
  }
  .cm-col-sm-push-1 {
    position: relative;
    left: 4.1666666667%;
  }
  .cm-col-sm-2 {
    display: block;
    max-width: 8.3333333333%;
    flex: 0 0 8.3333333333%;
  }
  .cm-col-sm-offset-2 {
    margin-left: 8.3333333333%;
  }
  .cm-col-sm-pull-2 {
    position: relative;
    right: 8.3333333333%;
  }
  .cm-col-sm-push-2 {
    position: relative;
    left: 8.3333333333%;
  }
  .cm-col-sm-3 {
    display: block;
    max-width: 12.5%;
    flex: 0 0 12.5%;
  }
  .cm-col-sm-offset-3 {
    margin-left: 12.5%;
  }
  .cm-col-sm-pull-3 {
    position: relative;
    right: 12.5%;
  }
  .cm-col-sm-push-3 {
    position: relative;
    left: 12.5%;
  }
  .cm-col-sm-4 {
    display: block;
    max-width: 16.6666666667%;
    flex: 0 0 16.6666666667%;
  }
  .cm-col-sm-offset-4 {
    margin-left: 16.6666666667%;
  }
  .cm-col-sm-pull-4 {
    position: relative;
    right: 16.6666666667%;
  }
  .cm-col-sm-push-4 {
    position: relative;
    left: 16.6666666667%;
  }
  .cm-col-sm-5 {
    display: block;
    max-width: 20.8333333333%;
    flex: 0 0 20.8333333333%;
  }
  .cm-col-sm-offset-5 {
    margin-left: 20.8333333333%;
  }
  .cm-col-sm-pull-5 {
    position: relative;
    right: 20.8333333333%;
  }
  .cm-col-sm-push-5 {
    position: relative;
    left: 20.8333333333%;
  }
  .cm-col-sm-6 {
    display: block;
    max-width: 25%;
    flex: 0 0 25%;
  }
  .cm-col-sm-offset-6 {
    margin-left: 25%;
  }
  .cm-col-sm-pull-6 {
    position: relative;
    right: 25%;
  }
  .cm-col-sm-push-6 {
    position: relative;
    left: 25%;
  }
  .cm-col-sm-7 {
    display: block;
    max-width: 29.1666666667%;
    flex: 0 0 29.1666666667%;
  }
  .cm-col-sm-offset-7 {
    margin-left: 29.1666666667%;
  }
  .cm-col-sm-pull-7 {
    position: relative;
    right: 29.1666666667%;
  }
  .cm-col-sm-push-7 {
    position: relative;
    left: 29.1666666667%;
  }
  .cm-col-sm-8 {
    display: block;
    max-width: 33.3333333333%;
    flex: 0 0 33.3333333333%;
  }
  .cm-col-sm-offset-8 {
    margin-left: 33.3333333333%;
  }
  .cm-col-sm-pull-8 {
    position: relative;
    right: 33.3333333333%;
  }
  .cm-col-sm-push-8 {
    position: relative;
    left: 33.3333333333%;
  }
  .cm-col-sm-9 {
    display: block;
    max-width: 37.5%;
    flex: 0 0 37.5%;
  }
  .cm-col-sm-offset-9 {
    margin-left: 37.5%;
  }
  .cm-col-sm-pull-9 {
    position: relative;
    right: 37.5%;
  }
  .cm-col-sm-push-9 {
    position: relative;
    left: 37.5%;
  }
  .cm-col-sm-10 {
    display: block;
    max-width: 41.6666666667%;
    flex: 0 0 41.6666666667%;
  }
  .cm-col-sm-offset-10 {
    margin-left: 41.6666666667%;
  }
  .cm-col-sm-pull-10 {
    position: relative;
    right: 41.6666666667%;
  }
  .cm-col-sm-push-10 {
    position: relative;
    left: 41.6666666667%;
  }
  .cm-col-sm-11 {
    display: block;
    max-width: 45.8333333333%;
    flex: 0 0 45.8333333333%;
  }
  .cm-col-sm-offset-11 {
    margin-left: 45.8333333333%;
  }
  .cm-col-sm-pull-11 {
    position: relative;
    right: 45.8333333333%;
  }
  .cm-col-sm-push-11 {
    position: relative;
    left: 45.8333333333%;
  }
  .cm-col-sm-12 {
    display: block;
    max-width: 50%;
    flex: 0 0 50%;
  }
  .cm-col-sm-offset-12 {
    margin-left: 50%;
  }
  .cm-col-sm-pull-12 {
    position: relative;
    right: 50%;
  }
  .cm-col-sm-push-12 {
    position: relative;
    left: 50%;
  }
  .cm-col-sm-13 {
    display: block;
    max-width: 54.1666666667%;
    flex: 0 0 54.1666666667%;
  }
  .cm-col-sm-offset-13 {
    margin-left: 54.1666666667%;
  }
  .cm-col-sm-pull-13 {
    position: relative;
    right: 54.1666666667%;
  }
  .cm-col-sm-push-13 {
    position: relative;
    left: 54.1666666667%;
  }
  .cm-col-sm-14 {
    display: block;
    max-width: 58.3333333333%;
    flex: 0 0 58.3333333333%;
  }
  .cm-col-sm-offset-14 {
    margin-left: 58.3333333333%;
  }
  .cm-col-sm-pull-14 {
    position: relative;
    right: 58.3333333333%;
  }
  .cm-col-sm-push-14 {
    position: relative;
    left: 58.3333333333%;
  }
  .cm-col-sm-15 {
    display: block;
    max-width: 62.5%;
    flex: 0 0 62.5%;
  }
  .cm-col-sm-offset-15 {
    margin-left: 62.5%;
  }
  .cm-col-sm-pull-15 {
    position: relative;
    right: 62.5%;
  }
  .cm-col-sm-push-15 {
    position: relative;
    left: 62.5%;
  }
  .cm-col-sm-16 {
    display: block;
    max-width: 66.6666666667%;
    flex: 0 0 66.6666666667%;
  }
  .cm-col-sm-offset-16 {
    margin-left: 66.6666666667%;
  }
  .cm-col-sm-pull-16 {
    position: relative;
    right: 66.6666666667%;
  }
  .cm-col-sm-push-16 {
    position: relative;
    left: 66.6666666667%;
  }
  .cm-col-sm-17 {
    display: block;
    max-width: 70.8333333333%;
    flex: 0 0 70.8333333333%;
  }
  .cm-col-sm-offset-17 {
    margin-left: 70.8333333333%;
  }
  .cm-col-sm-pull-17 {
    position: relative;
    right: 70.8333333333%;
  }
  .cm-col-sm-push-17 {
    position: relative;
    left: 70.8333333333%;
  }
  .cm-col-sm-18 {
    display: block;
    max-width: 75%;
    flex: 0 0 75%;
  }
  .cm-col-sm-offset-18 {
    margin-left: 75%;
  }
  .cm-col-sm-pull-18 {
    position: relative;
    right: 75%;
  }
  .cm-col-sm-push-18 {
    position: relative;
    left: 75%;
  }
  .cm-col-sm-19 {
    display: block;
    max-width: 79.1666666667%;
    flex: 0 0 79.1666666667%;
  }
  .cm-col-sm-offset-19 {
    margin-left: 79.1666666667%;
  }
  .cm-col-sm-pull-19 {
    position: relative;
    right: 79.1666666667%;
  }
  .cm-col-sm-push-19 {
    position: relative;
    left: 79.1666666667%;
  }
  .cm-col-sm-20 {
    display: block;
    max-width: 83.3333333333%;
    flex: 0 0 83.3333333333%;
  }
  .cm-col-sm-offset-20 {
    margin-left: 83.3333333333%;
  }
  .cm-col-sm-pull-20 {
    position: relative;
    right: 83.3333333333%;
  }
  .cm-col-sm-push-20 {
    position: relative;
    left: 83.3333333333%;
  }
  .cm-col-sm-21 {
    display: block;
    max-width: 87.5%;
    flex: 0 0 87.5%;
  }
  .cm-col-sm-offset-21 {
    margin-left: 87.5%;
  }
  .cm-col-sm-pull-21 {
    position: relative;
    right: 87.5%;
  }
  .cm-col-sm-push-21 {
    position: relative;
    left: 87.5%;
  }
  .cm-col-sm-22 {
    display: block;
    max-width: 91.6666666667%;
    flex: 0 0 91.6666666667%;
  }
  .cm-col-sm-offset-22 {
    margin-left: 91.6666666667%;
  }
  .cm-col-sm-pull-22 {
    position: relative;
    right: 91.6666666667%;
  }
  .cm-col-sm-push-22 {
    position: relative;
    left: 91.6666666667%;
  }
  .cm-col-sm-23 {
    display: block;
    max-width: 95.8333333333%;
    flex: 0 0 95.8333333333%;
  }
  .cm-col-sm-offset-23 {
    margin-left: 95.8333333333%;
  }
  .cm-col-sm-pull-23 {
    position: relative;
    right: 95.8333333333%;
  }
  .cm-col-sm-push-23 {
    position: relative;
    left: 95.8333333333%;
  }
  .cm-col-sm-24 {
    display: block;
    max-width: 100%;
    flex: 0 0 100%;
  }
  .cm-col-sm-offset-24 {
    margin-left: 100%;
  }
  .cm-col-sm-pull-24 {
    position: relative;
    right: 100%;
  }
  .cm-col-sm-push-24 {
    position: relative;
    left: 100%;
  }
}
@media only screen and (min-width: 992px) {
  .cm-col-md-0 {
    display: none;
  }
  .cm-col-md-0.is-guttered {
    display: none;
  }
  .cm-col-md-0 {
    max-width: 0%;
    flex: 0 0 0%;
  }
  .cm-col-md-offset-0 {
    margin-left: 0;
  }
  .cm-col-md-pull-0 {
    position: relative;
    right: 0;
  }
  .cm-col-md-push-0 {
    position: relative;
    left: 0;
  }
  .cm-col-md-1 {
    display: block;
    max-width: 4.1666666667%;
    flex: 0 0 4.1666666667%;
  }
  .cm-col-md-offset-1 {
    margin-left: 4.1666666667%;
  }
  .cm-col-md-pull-1 {
    position: relative;
    right: 4.1666666667%;
  }
  .cm-col-md-push-1 {
    position: relative;
    left: 4.1666666667%;
  }
  .cm-col-md-2 {
    display: block;
    max-width: 8.3333333333%;
    flex: 0 0 8.3333333333%;
  }
  .cm-col-md-offset-2 {
    margin-left: 8.3333333333%;
  }
  .cm-col-md-pull-2 {
    position: relative;
    right: 8.3333333333%;
  }
  .cm-col-md-push-2 {
    position: relative;
    left: 8.3333333333%;
  }
  .cm-col-md-3 {
    display: block;
    max-width: 12.5%;
    flex: 0 0 12.5%;
  }
  .cm-col-md-offset-3 {
    margin-left: 12.5%;
  }
  .cm-col-md-pull-3 {
    position: relative;
    right: 12.5%;
  }
  .cm-col-md-push-3 {
    position: relative;
    left: 12.5%;
  }
  .cm-col-md-4 {
    display: block;
    max-width: 16.6666666667%;
    flex: 0 0 16.6666666667%;
  }
  .cm-col-md-offset-4 {
    margin-left: 16.6666666667%;
  }
  .cm-col-md-pull-4 {
    position: relative;
    right: 16.6666666667%;
  }
  .cm-col-md-push-4 {
    position: relative;
    left: 16.6666666667%;
  }
  .cm-col-md-5 {
    display: block;
    max-width: 20.8333333333%;
    flex: 0 0 20.8333333333%;
  }
  .cm-col-md-offset-5 {
    margin-left: 20.8333333333%;
  }
  .cm-col-md-pull-5 {
    position: relative;
    right: 20.8333333333%;
  }
  .cm-col-md-push-5 {
    position: relative;
    left: 20.8333333333%;
  }
  .cm-col-md-6 {
    display: block;
    max-width: 25%;
    flex: 0 0 25%;
  }
  .cm-col-md-offset-6 {
    margin-left: 25%;
  }
  .cm-col-md-pull-6 {
    position: relative;
    right: 25%;
  }
  .cm-col-md-push-6 {
    position: relative;
    left: 25%;
  }
  .cm-col-md-7 {
    display: block;
    max-width: 29.1666666667%;
    flex: 0 0 29.1666666667%;
  }
  .cm-col-md-offset-7 {
    margin-left: 29.1666666667%;
  }
  .cm-col-md-pull-7 {
    position: relative;
    right: 29.1666666667%;
  }
  .cm-col-md-push-7 {
    position: relative;
    left: 29.1666666667%;
  }
  .cm-col-md-8 {
    display: block;
    max-width: 33.3333333333%;
    flex: 0 0 33.3333333333%;
  }
  .cm-col-md-offset-8 {
    margin-left: 33.3333333333%;
  }
  .cm-col-md-pull-8 {
    position: relative;
    right: 33.3333333333%;
  }
  .cm-col-md-push-8 {
    position: relative;
    left: 33.3333333333%;
  }
  .cm-col-md-9 {
    display: block;
    max-width: 37.5%;
    flex: 0 0 37.5%;
  }
  .cm-col-md-offset-9 {
    margin-left: 37.5%;
  }
  .cm-col-md-pull-9 {
    position: relative;
    right: 37.5%;
  }
  .cm-col-md-push-9 {
    position: relative;
    left: 37.5%;
  }
  .cm-col-md-10 {
    display: block;
    max-width: 41.6666666667%;
    flex: 0 0 41.6666666667%;
  }
  .cm-col-md-offset-10 {
    margin-left: 41.6666666667%;
  }
  .cm-col-md-pull-10 {
    position: relative;
    right: 41.6666666667%;
  }
  .cm-col-md-push-10 {
    position: relative;
    left: 41.6666666667%;
  }
  .cm-col-md-11 {
    display: block;
    max-width: 45.8333333333%;
    flex: 0 0 45.8333333333%;
  }
  .cm-col-md-offset-11 {
    margin-left: 45.8333333333%;
  }
  .cm-col-md-pull-11 {
    position: relative;
    right: 45.8333333333%;
  }
  .cm-col-md-push-11 {
    position: relative;
    left: 45.8333333333%;
  }
  .cm-col-md-12 {
    display: block;
    max-width: 50%;
    flex: 0 0 50%;
  }
  .cm-col-md-offset-12 {
    margin-left: 50%;
  }
  .cm-col-md-pull-12 {
    position: relative;
    right: 50%;
  }
  .cm-col-md-push-12 {
    position: relative;
    left: 50%;
  }
  .cm-col-md-13 {
    display: block;
    max-width: 54.1666666667%;
    flex: 0 0 54.1666666667%;
  }
  .cm-col-md-offset-13 {
    margin-left: 54.1666666667%;
  }
  .cm-col-md-pull-13 {
    position: relative;
    right: 54.1666666667%;
  }
  .cm-col-md-push-13 {
    position: relative;
    left: 54.1666666667%;
  }
  .cm-col-md-14 {
    display: block;
    max-width: 58.3333333333%;
    flex: 0 0 58.3333333333%;
  }
  .cm-col-md-offset-14 {
    margin-left: 58.3333333333%;
  }
  .cm-col-md-pull-14 {
    position: relative;
    right: 58.3333333333%;
  }
  .cm-col-md-push-14 {
    position: relative;
    left: 58.3333333333%;
  }
  .cm-col-md-15 {
    display: block;
    max-width: 62.5%;
    flex: 0 0 62.5%;
  }
  .cm-col-md-offset-15 {
    margin-left: 62.5%;
  }
  .cm-col-md-pull-15 {
    position: relative;
    right: 62.5%;
  }
  .cm-col-md-push-15 {
    position: relative;
    left: 62.5%;
  }
  .cm-col-md-16 {
    display: block;
    max-width: 66.6666666667%;
    flex: 0 0 66.6666666667%;
  }
  .cm-col-md-offset-16 {
    margin-left: 66.6666666667%;
  }
  .cm-col-md-pull-16 {
    position: relative;
    right: 66.6666666667%;
  }
  .cm-col-md-push-16 {
    position: relative;
    left: 66.6666666667%;
  }
  .cm-col-md-17 {
    display: block;
    max-width: 70.8333333333%;
    flex: 0 0 70.8333333333%;
  }
  .cm-col-md-offset-17 {
    margin-left: 70.8333333333%;
  }
  .cm-col-md-pull-17 {
    position: relative;
    right: 70.8333333333%;
  }
  .cm-col-md-push-17 {
    position: relative;
    left: 70.8333333333%;
  }
  .cm-col-md-18 {
    display: block;
    max-width: 75%;
    flex: 0 0 75%;
  }
  .cm-col-md-offset-18 {
    margin-left: 75%;
  }
  .cm-col-md-pull-18 {
    position: relative;
    right: 75%;
  }
  .cm-col-md-push-18 {
    position: relative;
    left: 75%;
  }
  .cm-col-md-19 {
    display: block;
    max-width: 79.1666666667%;
    flex: 0 0 79.1666666667%;
  }
  .cm-col-md-offset-19 {
    margin-left: 79.1666666667%;
  }
  .cm-col-md-pull-19 {
    position: relative;
    right: 79.1666666667%;
  }
  .cm-col-md-push-19 {
    position: relative;
    left: 79.1666666667%;
  }
  .cm-col-md-20 {
    display: block;
    max-width: 83.3333333333%;
    flex: 0 0 83.3333333333%;
  }
  .cm-col-md-offset-20 {
    margin-left: 83.3333333333%;
  }
  .cm-col-md-pull-20 {
    position: relative;
    right: 83.3333333333%;
  }
  .cm-col-md-push-20 {
    position: relative;
    left: 83.3333333333%;
  }
  .cm-col-md-21 {
    display: block;
    max-width: 87.5%;
    flex: 0 0 87.5%;
  }
  .cm-col-md-offset-21 {
    margin-left: 87.5%;
  }
  .cm-col-md-pull-21 {
    position: relative;
    right: 87.5%;
  }
  .cm-col-md-push-21 {
    position: relative;
    left: 87.5%;
  }
  .cm-col-md-22 {
    display: block;
    max-width: 91.6666666667%;
    flex: 0 0 91.6666666667%;
  }
  .cm-col-md-offset-22 {
    margin-left: 91.6666666667%;
  }
  .cm-col-md-pull-22 {
    position: relative;
    right: 91.6666666667%;
  }
  .cm-col-md-push-22 {
    position: relative;
    left: 91.6666666667%;
  }
  .cm-col-md-23 {
    display: block;
    max-width: 95.8333333333%;
    flex: 0 0 95.8333333333%;
  }
  .cm-col-md-offset-23 {
    margin-left: 95.8333333333%;
  }
  .cm-col-md-pull-23 {
    position: relative;
    right: 95.8333333333%;
  }
  .cm-col-md-push-23 {
    position: relative;
    left: 95.8333333333%;
  }
  .cm-col-md-24 {
    display: block;
    max-width: 100%;
    flex: 0 0 100%;
  }
  .cm-col-md-offset-24 {
    margin-left: 100%;
  }
  .cm-col-md-pull-24 {
    position: relative;
    right: 100%;
  }
  .cm-col-md-push-24 {
    position: relative;
    left: 100%;
  }
}
@media only screen and (min-width: 1200px) {
  .cm-col-lg-0 {
    display: none;
  }
  .cm-col-lg-0.is-guttered {
    display: none;
  }
  .cm-col-lg-0 {
    max-width: 0%;
    flex: 0 0 0%;
  }
  .cm-col-lg-offset-0 {
    margin-left: 0;
  }
  .cm-col-lg-pull-0 {
    position: relative;
    right: 0;
  }
  .cm-col-lg-push-0 {
    position: relative;
    left: 0;
  }
  .cm-col-lg-1 {
    display: block;
    max-width: 4.1666666667%;
    flex: 0 0 4.1666666667%;
  }
  .cm-col-lg-offset-1 {
    margin-left: 4.1666666667%;
  }
  .cm-col-lg-pull-1 {
    position: relative;
    right: 4.1666666667%;
  }
  .cm-col-lg-push-1 {
    position: relative;
    left: 4.1666666667%;
  }
  .cm-col-lg-2 {
    display: block;
    max-width: 8.3333333333%;
    flex: 0 0 8.3333333333%;
  }
  .cm-col-lg-offset-2 {
    margin-left: 8.3333333333%;
  }
  .cm-col-lg-pull-2 {
    position: relative;
    right: 8.3333333333%;
  }
  .cm-col-lg-push-2 {
    position: relative;
    left: 8.3333333333%;
  }
  .cm-col-lg-3 {
    display: block;
    max-width: 12.5%;
    flex: 0 0 12.5%;
  }
  .cm-col-lg-offset-3 {
    margin-left: 12.5%;
  }
  .cm-col-lg-pull-3 {
    position: relative;
    right: 12.5%;
  }
  .cm-col-lg-push-3 {
    position: relative;
    left: 12.5%;
  }
  .cm-col-lg-4 {
    display: block;
    max-width: 16.6666666667%;
    flex: 0 0 16.6666666667%;
  }
  .cm-col-lg-offset-4 {
    margin-left: 16.6666666667%;
  }
  .cm-col-lg-pull-4 {
    position: relative;
    right: 16.6666666667%;
  }
  .cm-col-lg-push-4 {
    position: relative;
    left: 16.6666666667%;
  }
  .cm-col-lg-5 {
    display: block;
    max-width: 20.8333333333%;
    flex: 0 0 20.8333333333%;
  }
  .cm-col-lg-offset-5 {
    margin-left: 20.8333333333%;
  }
  .cm-col-lg-pull-5 {
    position: relative;
    right: 20.8333333333%;
  }
  .cm-col-lg-push-5 {
    position: relative;
    left: 20.8333333333%;
  }
  .cm-col-lg-6 {
    display: block;
    max-width: 25%;
    flex: 0 0 25%;
  }
  .cm-col-lg-offset-6 {
    margin-left: 25%;
  }
  .cm-col-lg-pull-6 {
    position: relative;
    right: 25%;
  }
  .cm-col-lg-push-6 {
    position: relative;
    left: 25%;
  }
  .cm-col-lg-7 {
    display: block;
    max-width: 29.1666666667%;
    flex: 0 0 29.1666666667%;
  }
  .cm-col-lg-offset-7 {
    margin-left: 29.1666666667%;
  }
  .cm-col-lg-pull-7 {
    position: relative;
    right: 29.1666666667%;
  }
  .cm-col-lg-push-7 {
    position: relative;
    left: 29.1666666667%;
  }
  .cm-col-lg-8 {
    display: block;
    max-width: 33.3333333333%;
    flex: 0 0 33.3333333333%;
  }
  .cm-col-lg-offset-8 {
    margin-left: 33.3333333333%;
  }
  .cm-col-lg-pull-8 {
    position: relative;
    right: 33.3333333333%;
  }
  .cm-col-lg-push-8 {
    position: relative;
    left: 33.3333333333%;
  }
  .cm-col-lg-9 {
    display: block;
    max-width: 37.5%;
    flex: 0 0 37.5%;
  }
  .cm-col-lg-offset-9 {
    margin-left: 37.5%;
  }
  .cm-col-lg-pull-9 {
    position: relative;
    right: 37.5%;
  }
  .cm-col-lg-push-9 {
    position: relative;
    left: 37.5%;
  }
  .cm-col-lg-10 {
    display: block;
    max-width: 41.6666666667%;
    flex: 0 0 41.6666666667%;
  }
  .cm-col-lg-offset-10 {
    margin-left: 41.6666666667%;
  }
  .cm-col-lg-pull-10 {
    position: relative;
    right: 41.6666666667%;
  }
  .cm-col-lg-push-10 {
    position: relative;
    left: 41.6666666667%;
  }
  .cm-col-lg-11 {
    display: block;
    max-width: 45.8333333333%;
    flex: 0 0 45.8333333333%;
  }
  .cm-col-lg-offset-11 {
    margin-left: 45.8333333333%;
  }
  .cm-col-lg-pull-11 {
    position: relative;
    right: 45.8333333333%;
  }
  .cm-col-lg-push-11 {
    position: relative;
    left: 45.8333333333%;
  }
  .cm-col-lg-12 {
    display: block;
    max-width: 50%;
    flex: 0 0 50%;
  }
  .cm-col-lg-offset-12 {
    margin-left: 50%;
  }
  .cm-col-lg-pull-12 {
    position: relative;
    right: 50%;
  }
  .cm-col-lg-push-12 {
    position: relative;
    left: 50%;
  }
  .cm-col-lg-13 {
    display: block;
    max-width: 54.1666666667%;
    flex: 0 0 54.1666666667%;
  }
  .cm-col-lg-offset-13 {
    margin-left: 54.1666666667%;
  }
  .cm-col-lg-pull-13 {
    position: relative;
    right: 54.1666666667%;
  }
  .cm-col-lg-push-13 {
    position: relative;
    left: 54.1666666667%;
  }
  .cm-col-lg-14 {
    display: block;
    max-width: 58.3333333333%;
    flex: 0 0 58.3333333333%;
  }
  .cm-col-lg-offset-14 {
    margin-left: 58.3333333333%;
  }
  .cm-col-lg-pull-14 {
    position: relative;
    right: 58.3333333333%;
  }
  .cm-col-lg-push-14 {
    position: relative;
    left: 58.3333333333%;
  }
  .cm-col-lg-15 {
    display: block;
    max-width: 62.5%;
    flex: 0 0 62.5%;
  }
  .cm-col-lg-offset-15 {
    margin-left: 62.5%;
  }
  .cm-col-lg-pull-15 {
    position: relative;
    right: 62.5%;
  }
  .cm-col-lg-push-15 {
    position: relative;
    left: 62.5%;
  }
  .cm-col-lg-16 {
    display: block;
    max-width: 66.6666666667%;
    flex: 0 0 66.6666666667%;
  }
  .cm-col-lg-offset-16 {
    margin-left: 66.6666666667%;
  }
  .cm-col-lg-pull-16 {
    position: relative;
    right: 66.6666666667%;
  }
  .cm-col-lg-push-16 {
    position: relative;
    left: 66.6666666667%;
  }
  .cm-col-lg-17 {
    display: block;
    max-width: 70.8333333333%;
    flex: 0 0 70.8333333333%;
  }
  .cm-col-lg-offset-17 {
    margin-left: 70.8333333333%;
  }
  .cm-col-lg-pull-17 {
    position: relative;
    right: 70.8333333333%;
  }
  .cm-col-lg-push-17 {
    position: relative;
    left: 70.8333333333%;
  }
  .cm-col-lg-18 {
    display: block;
    max-width: 75%;
    flex: 0 0 75%;
  }
  .cm-col-lg-offset-18 {
    margin-left: 75%;
  }
  .cm-col-lg-pull-18 {
    position: relative;
    right: 75%;
  }
  .cm-col-lg-push-18 {
    position: relative;
    left: 75%;
  }
  .cm-col-lg-19 {
    display: block;
    max-width: 79.1666666667%;
    flex: 0 0 79.1666666667%;
  }
  .cm-col-lg-offset-19 {
    margin-left: 79.1666666667%;
  }
  .cm-col-lg-pull-19 {
    position: relative;
    right: 79.1666666667%;
  }
  .cm-col-lg-push-19 {
    position: relative;
    left: 79.1666666667%;
  }
  .cm-col-lg-20 {
    display: block;
    max-width: 83.3333333333%;
    flex: 0 0 83.3333333333%;
  }
  .cm-col-lg-offset-20 {
    margin-left: 83.3333333333%;
  }
  .cm-col-lg-pull-20 {
    position: relative;
    right: 83.3333333333%;
  }
  .cm-col-lg-push-20 {
    position: relative;
    left: 83.3333333333%;
  }
  .cm-col-lg-21 {
    display: block;
    max-width: 87.5%;
    flex: 0 0 87.5%;
  }
  .cm-col-lg-offset-21 {
    margin-left: 87.5%;
  }
  .cm-col-lg-pull-21 {
    position: relative;
    right: 87.5%;
  }
  .cm-col-lg-push-21 {
    position: relative;
    left: 87.5%;
  }
  .cm-col-lg-22 {
    display: block;
    max-width: 91.6666666667%;
    flex: 0 0 91.6666666667%;
  }
  .cm-col-lg-offset-22 {
    margin-left: 91.6666666667%;
  }
  .cm-col-lg-pull-22 {
    position: relative;
    right: 91.6666666667%;
  }
  .cm-col-lg-push-22 {
    position: relative;
    left: 91.6666666667%;
  }
  .cm-col-lg-23 {
    display: block;
    max-width: 95.8333333333%;
    flex: 0 0 95.8333333333%;
  }
  .cm-col-lg-offset-23 {
    margin-left: 95.8333333333%;
  }
  .cm-col-lg-pull-23 {
    position: relative;
    right: 95.8333333333%;
  }
  .cm-col-lg-push-23 {
    position: relative;
    left: 95.8333333333%;
  }
  .cm-col-lg-24 {
    display: block;
    max-width: 100%;
    flex: 0 0 100%;
  }
  .cm-col-lg-offset-24 {
    margin-left: 100%;
  }
  .cm-col-lg-pull-24 {
    position: relative;
    right: 100%;
  }
  .cm-col-lg-push-24 {
    position: relative;
    left: 100%;
  }
}
@media only screen and (min-width: 1920px) {
  .cm-col-xl-0 {
    display: none;
  }
  .cm-col-xl-0.is-guttered {
    display: none;
  }
  .cm-col-xl-0 {
    max-width: 0%;
    flex: 0 0 0%;
  }
  .cm-col-xl-offset-0 {
    margin-left: 0;
  }
  .cm-col-xl-pull-0 {
    position: relative;
    right: 0;
  }
  .cm-col-xl-push-0 {
    position: relative;
    left: 0;
  }
  .cm-col-xl-1 {
    display: block;
    max-width: 4.1666666667%;
    flex: 0 0 4.1666666667%;
  }
  .cm-col-xl-offset-1 {
    margin-left: 4.1666666667%;
  }
  .cm-col-xl-pull-1 {
    position: relative;
    right: 4.1666666667%;
  }
  .cm-col-xl-push-1 {
    position: relative;
    left: 4.1666666667%;
  }
  .cm-col-xl-2 {
    display: block;
    max-width: 8.3333333333%;
    flex: 0 0 8.3333333333%;
  }
  .cm-col-xl-offset-2 {
    margin-left: 8.3333333333%;
  }
  .cm-col-xl-pull-2 {
    position: relative;
    right: 8.3333333333%;
  }
  .cm-col-xl-push-2 {
    position: relative;
    left: 8.3333333333%;
  }
  .cm-col-xl-3 {
    display: block;
    max-width: 12.5%;
    flex: 0 0 12.5%;
  }
  .cm-col-xl-offset-3 {
    margin-left: 12.5%;
  }
  .cm-col-xl-pull-3 {
    position: relative;
    right: 12.5%;
  }
  .cm-col-xl-push-3 {
    position: relative;
    left: 12.5%;
  }
  .cm-col-xl-4 {
    display: block;
    max-width: 16.6666666667%;
    flex: 0 0 16.6666666667%;
  }
  .cm-col-xl-offset-4 {
    margin-left: 16.6666666667%;
  }
  .cm-col-xl-pull-4 {
    position: relative;
    right: 16.6666666667%;
  }
  .cm-col-xl-push-4 {
    position: relative;
    left: 16.6666666667%;
  }
  .cm-col-xl-5 {
    display: block;
    max-width: 20.8333333333%;
    flex: 0 0 20.8333333333%;
  }
  .cm-col-xl-offset-5 {
    margin-left: 20.8333333333%;
  }
  .cm-col-xl-pull-5 {
    position: relative;
    right: 20.8333333333%;
  }
  .cm-col-xl-push-5 {
    position: relative;
    left: 20.8333333333%;
  }
  .cm-col-xl-6 {
    display: block;
    max-width: 25%;
    flex: 0 0 25%;
  }
  .cm-col-xl-offset-6 {
    margin-left: 25%;
  }
  .cm-col-xl-pull-6 {
    position: relative;
    right: 25%;
  }
  .cm-col-xl-push-6 {
    position: relative;
    left: 25%;
  }
  .cm-col-xl-7 {
    display: block;
    max-width: 29.1666666667%;
    flex: 0 0 29.1666666667%;
  }
  .cm-col-xl-offset-7 {
    margin-left: 29.1666666667%;
  }
  .cm-col-xl-pull-7 {
    position: relative;
    right: 29.1666666667%;
  }
  .cm-col-xl-push-7 {
    position: relative;
    left: 29.1666666667%;
  }
  .cm-col-xl-8 {
    display: block;
    max-width: 33.3333333333%;
    flex: 0 0 33.3333333333%;
  }
  .cm-col-xl-offset-8 {
    margin-left: 33.3333333333%;
  }
  .cm-col-xl-pull-8 {
    position: relative;
    right: 33.3333333333%;
  }
  .cm-col-xl-push-8 {
    position: relative;
    left: 33.3333333333%;
  }
  .cm-col-xl-9 {
    display: block;
    max-width: 37.5%;
    flex: 0 0 37.5%;
  }
  .cm-col-xl-offset-9 {
    margin-left: 37.5%;
  }
  .cm-col-xl-pull-9 {
    position: relative;
    right: 37.5%;
  }
  .cm-col-xl-push-9 {
    position: relative;
    left: 37.5%;
  }
  .cm-col-xl-10 {
    display: block;
    max-width: 41.6666666667%;
    flex: 0 0 41.6666666667%;
  }
  .cm-col-xl-offset-10 {
    margin-left: 41.6666666667%;
  }
  .cm-col-xl-pull-10 {
    position: relative;
    right: 41.6666666667%;
  }
  .cm-col-xl-push-10 {
    position: relative;
    left: 41.6666666667%;
  }
  .cm-col-xl-11 {
    display: block;
    max-width: 45.8333333333%;
    flex: 0 0 45.8333333333%;
  }
  .cm-col-xl-offset-11 {
    margin-left: 45.8333333333%;
  }
  .cm-col-xl-pull-11 {
    position: relative;
    right: 45.8333333333%;
  }
  .cm-col-xl-push-11 {
    position: relative;
    left: 45.8333333333%;
  }
  .cm-col-xl-12 {
    display: block;
    max-width: 50%;
    flex: 0 0 50%;
  }
  .cm-col-xl-offset-12 {
    margin-left: 50%;
  }
  .cm-col-xl-pull-12 {
    position: relative;
    right: 50%;
  }
  .cm-col-xl-push-12 {
    position: relative;
    left: 50%;
  }
  .cm-col-xl-13 {
    display: block;
    max-width: 54.1666666667%;
    flex: 0 0 54.1666666667%;
  }
  .cm-col-xl-offset-13 {
    margin-left: 54.1666666667%;
  }
  .cm-col-xl-pull-13 {
    position: relative;
    right: 54.1666666667%;
  }
  .cm-col-xl-push-13 {
    position: relative;
    left: 54.1666666667%;
  }
  .cm-col-xl-14 {
    display: block;
    max-width: 58.3333333333%;
    flex: 0 0 58.3333333333%;
  }
  .cm-col-xl-offset-14 {
    margin-left: 58.3333333333%;
  }
  .cm-col-xl-pull-14 {
    position: relative;
    right: 58.3333333333%;
  }
  .cm-col-xl-push-14 {
    position: relative;
    left: 58.3333333333%;
  }
  .cm-col-xl-15 {
    display: block;
    max-width: 62.5%;
    flex: 0 0 62.5%;
  }
  .cm-col-xl-offset-15 {
    margin-left: 62.5%;
  }
  .cm-col-xl-pull-15 {
    position: relative;
    right: 62.5%;
  }
  .cm-col-xl-push-15 {
    position: relative;
    left: 62.5%;
  }
  .cm-col-xl-16 {
    display: block;
    max-width: 66.6666666667%;
    flex: 0 0 66.6666666667%;
  }
  .cm-col-xl-offset-16 {
    margin-left: 66.6666666667%;
  }
  .cm-col-xl-pull-16 {
    position: relative;
    right: 66.6666666667%;
  }
  .cm-col-xl-push-16 {
    position: relative;
    left: 66.6666666667%;
  }
  .cm-col-xl-17 {
    display: block;
    max-width: 70.8333333333%;
    flex: 0 0 70.8333333333%;
  }
  .cm-col-xl-offset-17 {
    margin-left: 70.8333333333%;
  }
  .cm-col-xl-pull-17 {
    position: relative;
    right: 70.8333333333%;
  }
  .cm-col-xl-push-17 {
    position: relative;
    left: 70.8333333333%;
  }
  .cm-col-xl-18 {
    display: block;
    max-width: 75%;
    flex: 0 0 75%;
  }
  .cm-col-xl-offset-18 {
    margin-left: 75%;
  }
  .cm-col-xl-pull-18 {
    position: relative;
    right: 75%;
  }
  .cm-col-xl-push-18 {
    position: relative;
    left: 75%;
  }
  .cm-col-xl-19 {
    display: block;
    max-width: 79.1666666667%;
    flex: 0 0 79.1666666667%;
  }
  .cm-col-xl-offset-19 {
    margin-left: 79.1666666667%;
  }
  .cm-col-xl-pull-19 {
    position: relative;
    right: 79.1666666667%;
  }
  .cm-col-xl-push-19 {
    position: relative;
    left: 79.1666666667%;
  }
  .cm-col-xl-20 {
    display: block;
    max-width: 83.3333333333%;
    flex: 0 0 83.3333333333%;
  }
  .cm-col-xl-offset-20 {
    margin-left: 83.3333333333%;
  }
  .cm-col-xl-pull-20 {
    position: relative;
    right: 83.3333333333%;
  }
  .cm-col-xl-push-20 {
    position: relative;
    left: 83.3333333333%;
  }
  .cm-col-xl-21 {
    display: block;
    max-width: 87.5%;
    flex: 0 0 87.5%;
  }
  .cm-col-xl-offset-21 {
    margin-left: 87.5%;
  }
  .cm-col-xl-pull-21 {
    position: relative;
    right: 87.5%;
  }
  .cm-col-xl-push-21 {
    position: relative;
    left: 87.5%;
  }
  .cm-col-xl-22 {
    display: block;
    max-width: 91.6666666667%;
    flex: 0 0 91.6666666667%;
  }
  .cm-col-xl-offset-22 {
    margin-left: 91.6666666667%;
  }
  .cm-col-xl-pull-22 {
    position: relative;
    right: 91.6666666667%;
  }
  .cm-col-xl-push-22 {
    position: relative;
    left: 91.6666666667%;
  }
  .cm-col-xl-23 {
    display: block;
    max-width: 95.8333333333%;
    flex: 0 0 95.8333333333%;
  }
  .cm-col-xl-offset-23 {
    margin-left: 95.8333333333%;
  }
  .cm-col-xl-pull-23 {
    position: relative;
    right: 95.8333333333%;
  }
  .cm-col-xl-push-23 {
    position: relative;
    left: 95.8333333333%;
  }
  .cm-col-xl-24 {
    display: block;
    max-width: 100%;
    flex: 0 0 100%;
  }
  .cm-col-xl-offset-24 {
    margin-left: 100%;
  }
  .cm-col-xl-pull-24 {
    position: relative;
    right: 100%;
  }
  .cm-col-xl-push-24 {
    position: relative;
    left: 100%;
  }
}
.cm-collapse {
  --cm-collapse-border-color: var(--cm-border-color-lighter);
  --cm-collapse-header-height: 48px;
  --cm-collapse-header-bg-color: var(--cm-fill-color-blank);
  --cm-collapse-header-text-color: var(--cm-text-color-primary);
  --cm-collapse-header-font-size: 13px;
  --cm-collapse-content-bg-color: var(--cm-fill-color-blank);
  --cm-collapse-content-font-size: 13px;
  --cm-collapse-content-text-color: var(--cm-text-color-primary);
  border-top: 1px solid var(--cm-collapse-border-color);
  border-bottom: 1px solid var(--cm-collapse-border-color);
}

.cm-collapse-item.is-disabled .cm-collapse-item__header {
  color: var(--cm-text-color-disabled);
  cursor: not-allowed;
}

.cm-collapse-item__header {
  display: flex;
  align-items: center;
  height: var(--cm-collapse-header-height);
  line-height: var(--cm-collapse-header-height);
  background-color: var(--cm-collapse-header-bg-color);
  color: var(--cm-collapse-header-text-color);
  cursor: pointer;
  border-bottom: 1px solid var(--cm-collapse-border-color);
  font-size: var(--cm-collapse-header-font-size);
  font-weight: 500;
  transition: border-bottom-color var(--cm-transition-duration);
  outline: 0;
}

.cm-collapse-item__arrow {
  margin: 0 8px 0 auto;
  transition: transform var(--cm-transition-duration);
  font-weight: 300;
}

.cm-collapse-item__arrow.is-active {
  transform: rotate(90deg);
}

.cm-collapse-item__header.focusing:focus:not(:hover) {
  color: var(--cm-color-primary);
}

.cm-collapse-item__header.is-active {
  border-bottom-color: transparent;
}

.cm-collapse-item__wrap {
  will-change: height;
  background-color: var(--cm-collapse-content-bg-color);
  overflow: hidden;
  box-sizing: border-box;
  border-bottom: 1px solid var(--cm-collapse-border-color);
}

.cm-collapse-item__content {
  padding-bottom: 25px;
  font-size: var(--cm-collapse-content-font-size);
  color: var(--cm-collapse-content-text-color);
  line-height: 1.7692307692;
}

.cm-collapse-item:last-child {
  margin-bottom: -1px;
}

.cm-color-predefine {
  display: flex;
  font-size: 12px;
  margin-top: 8px;
  width: 280px;
}

.cm-color-predefine__colors {
  display: flex;
  flex: 1;
  flex-wrap: wrap;
}

.cm-color-predefine__color-selector {
  margin: 0 0 8px 8px;
  width: 20px;
  height: 20px;
  border-radius: 4px;
  cursor: pointer;
}

.cm-color-predefine__color-selector:nth-child(10n+1) {
  margin-left: 0;
}

.cm-color-predefine__color-selector.selected {
  box-shadow: 0 0 3px 2px var(--cm-color-primary);
}

.cm-color-predefine__color-selector > div {
  display: flex;
  height: 100%;
  border-radius: 3px;
}

.cm-color-predefine__color-selector.is-alpha {
  background-image: url();
}

.cm-color-hue-slider {
  position: relative;
  box-sizing: border-box;
  width: 280px;
  height: 12px;
  background-color: red;
  padding: 0 2px;
  float: right;
}

.cm-color-hue-slider__bar {
  position: relative;
  background: linear-gradient(to right, red 0, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, red 100%);
  height: 100%;
}

.cm-color-hue-slider__thumb {
  position: absolute;
  cursor: pointer;
  box-sizing: border-box;
  left: 0;
  top: 0;
  width: 4px;
  height: 100%;
  border-radius: 1px;
  background: #fff;
  border: 1px solid var(--cm-border-color-lighter);
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.6);
  z-index: 1;
}

.cm-color-hue-slider.is-vertical {
  width: 12px;
  height: 180px;
  padding: 2px 0;
}

.cm-color-hue-slider.is-vertical .cm-color-hue-slider__bar {
  background: linear-gradient(to bottom, red 0, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, red 100%);
}

.cm-color-hue-slider.is-vertical .cm-color-hue-slider__thumb {
  left: 0;
  top: 0;
  width: 100%;
  height: 4px;
}

.cm-color-svpanel {
  position: relative;
  width: 280px;
  height: 180px;
}

.cm-color-svpanel__black,
.cm-color-svpanel__white {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.cm-color-svpanel__white {
  background: linear-gradient(to right, #fff, rgba(255, 255, 255, 0));
}

.cm-color-svpanel__black {
  background: linear-gradient(to top, #000, rgba(0, 0, 0, 0));
}

.cm-color-svpanel__cursor {
  position: absolute;
}

.cm-color-svpanel__cursor > div {
  cursor: head;
  width: 4px;
  height: 4px;
  box-shadow: 0 0 0 1.5px #fff, inset 0 0 1px 1px rgba(0, 0, 0, 0.3), 0 0 1px 2px rgba(0, 0, 0, 0.4);
  border-radius: 50%;
  transform: translate(-2px, -2px);
}

.cm-color-alpha-slider {
  position: relative;
  box-sizing: border-box;
  width: 280px;
  height: 12px;
  background-image: linear-gradient(45deg, var(--cm-color-picker-alpha-bg-a) 25%, var(--cm-color-picker-alpha-bg-b) 25%), linear-gradient(135deg, var(--cm-color-picker-alpha-bg-a) 25%, var(--cm-color-picker-alpha-bg-b) 25%), linear-gradient(45deg, var(--cm-color-picker-alpha-bg-b) 75%, var(--cm-color-picker-alpha-bg-a) 75%), linear-gradient(135deg, var(--cm-color-picker-alpha-bg-b) 75%, var(--cm-color-picker-alpha-bg-a) 75%);
  background-size: 12px 12px;
  background-position: 0 0, 6px 0, 6px -6px, 0 6px;
}

.cm-color-alpha-slider__bar {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--cm-bg-color) 100%);
  height: 100%;
}

.cm-color-alpha-slider__thumb {
  position: absolute;
  cursor: pointer;
  box-sizing: border-box;
  left: 0;
  top: 0;
  width: 4px;
  height: 100%;
  border-radius: 1px;
  background: #fff;
  border: 1px solid var(--cm-border-color-lighter);
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.6);
  z-index: 1;
}

.cm-color-alpha-slider.is-vertical {
  width: 20px;
  height: 180px;
}

.cm-color-alpha-slider.is-vertical .cm-color-alpha-slider__bar {
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, #fff 100%);
}

.cm-color-alpha-slider.is-vertical .cm-color-alpha-slider__thumb {
  left: 0;
  top: 0;
  width: 100%;
  height: 4px;
}

.cm-color-dropdown {
  width: 300px;
}

.cm-color-dropdown__main-wrapper {
  margin-bottom: 6px;
}

.cm-color-dropdown__main-wrapper::after {
  content: "";
  display: table;
  clear: both;
}

.cm-color-dropdown__btns {
  margin-top: 12px;
  text-align: right;
}

.cm-color-dropdown__value {
  float: left;
  line-height: 26px;
  font-size: 12px;
  color: #000;
  width: 160px;
}

.cm-color-picker {
  display: inline-block;
  position: relative;
  line-height: normal;
  outline: 0;
}

.cm-color-picker:hover:not(.is-disabled) .cm-color-picker__trigger {
  border: 1px solid var(--cm-border-color-hover);
}

.cm-color-picker:focus-visible:not(.is-disabled) .cm-color-picker__trigger {
  outline: 2px solid var(--cm-color-primary);
  outline-offset: 1px;
}

.cm-color-picker.is-disabled .cm-color-picker__trigger {
  cursor: not-allowed;
}

.cm-color-picker--large {
  height: 40px;
}

.cm-color-picker--large .cm-color-picker__trigger {
  height: 40px;
  width: 40px;
}

.cm-color-picker--large .cm-color-picker__mask {
  height: 38px;
  width: 38px;
}

.cm-color-picker--small {
  height: 24px;
}

.cm-color-picker--small .cm-color-picker__trigger {
  height: 24px;
  width: 24px;
}

.cm-color-picker--small .cm-color-picker__mask {
  height: 22px;
  width: 22px;
}

.cm-color-picker--small .cm-color-picker__empty,
.cm-color-picker--small .cm-color-picker__icon {
  transform: scale(0.8);
}

.cm-color-picker__mask {
  height: 30px;
  width: 30px;
  border-radius: 4px;
  position: absolute;
  top: 1px;
  left: 1px;
  z-index: 1;
  cursor: not-allowed;
  background-color: rgba(255, 255, 255, 0.7);
}

.cm-color-picker__trigger {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  height: 32px;
  width: 32px;
  padding: 4px;
  border: 1px solid var(--cm-border-color);
  border-radius: 4px;
  font-size: 0;
  position: relative;
  cursor: pointer;
}

.cm-color-picker__color {
  position: relative;
  display: block;
  box-sizing: border-box;
  border: 1px solid var(--cm-text-color-secondary);
  border-radius: var(--cm-border-radius-small);
  width: 100%;
  height: 100%;
  text-align: center;
}

.cm-color-picker__color.is-alpha {
  background-image: linear-gradient(45deg, var(--cm-color-picker-alpha-bg-a) 25%, var(--cm-color-picker-alpha-bg-b) 25%), linear-gradient(135deg, var(--cm-color-picker-alpha-bg-a) 25%, var(--cm-color-picker-alpha-bg-b) 25%), linear-gradient(45deg, var(--cm-color-picker-alpha-bg-b) 75%, var(--cm-color-picker-alpha-bg-a) 75%), linear-gradient(135deg, var(--cm-color-picker-alpha-bg-b) 75%, var(--cm-color-picker-alpha-bg-a) 75%);
  background-size: 12px 12px;
  background-position: 0 0, 6px 0, 6px -6px, 0 6px;
}

.cm-color-picker__color-inner {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

.cm-color-picker .cm-color-picker__empty {
  font-size: 12px;
  color: var(--cm-text-color-secondary);
}

.cm-color-picker .cm-color-picker__icon {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 12px;
}

.cm-color-picker__panel {
  position: absolute;
  z-index: 10;
  padding: 6px;
  box-sizing: content-box;
  background-color: #fff;
  border-radius: var(--cm-border-radius-base);
  box-shadow: var(--cm-box-shadow-light);
}

.cm-color-picker__panel.cm-popper {
  border: 1px solid var(--cm-border-color-lighter);
}

.cm-color-picker,
.cm-color-picker__panel {
  --cm-color-picker-alpha-bg-a: #ccc;
  --cm-color-picker-alpha-bg-b: transparent;
}

.dark .cm-color-picker,
.dark .cm-color-picker__panel {
  --cm-color-picker-alpha-bg-a: #333333;
}

.cm-container {
  display: flex;
  flex-direction: row;
  flex: 1;
  flex-basis: auto;
  box-sizing: border-box;
  min-width: 0;
}

.cm-container.is-vertical {
  flex-direction: column;
}

.cm-date-table {
  font-size: 12px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cm-date-table.is-week-mode .cm-date-table__row:hover .cm-date-table-cell {
  background-color: var(--cm-datepicker-inrange-bg-color);
}

.cm-date-table.is-week-mode .cm-date-table__row:hover td.available:hover {
  color: var(--cm-datepicker-text-color);
}

.cm-date-table.is-week-mode .cm-date-table__row:hover td:first-child .cm-date-table-cell {
  margin-left: 5px;
  border-top-left-radius: 15px;
  border-bottom-left-radius: 15px;
}

.cm-date-table.is-week-mode .cm-date-table__row:hover td:last-child .cm-date-table-cell {
  margin-right: 5px;
  border-top-right-radius: 15px;
  border-bottom-right-radius: 15px;
}

.cm-date-table.is-week-mode .cm-date-table__row.current .cm-date-table-cell {
  background-color: var(--cm-datepicker-inrange-bg-color);
}

.cm-date-table td {
  width: 32px;
  height: 30px;
  padding: 4px 0;
  box-sizing: border-box;
  text-align: center;
  cursor: pointer;
  position: relative;
}

.cm-date-table td .cm-date-table-cell {
  height: 30px;
  padding: 3px 0;
  box-sizing: border-box;
}

.cm-date-table td .cm-date-table-cell .cm-date-table-cell__text {
  width: 24px;
  height: 24px;
  display: block;
  margin: 0 auto;
  line-height: 24px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 50%;
}

.cm-date-table td.next-month,
.cm-date-table td.prev-month {
  color: var(--cm-datepicker-off-text-color);
}

.cm-date-table td.today {
  position: relative;
}

.cm-date-table td.today .cm-date-table-cell__text {
  color: var(--cm-color-primary);
  font-weight: 700;
}

.cm-date-table td.today.end-date .cm-date-table-cell__text,
.cm-date-table td.today.start-date .cm-date-table-cell__text {
  color: #fff;
}

.cm-date-table td.available:hover {
  color: var(--cm-datepicker-hover-text-color);
}

.cm-date-table td.in-range .cm-date-table-cell {
  background-color: var(--cm-datepicker-inrange-bg-color);
}

.cm-date-table td.in-range .cm-date-table-cell:hover {
  background-color: var(--cm-datepicker-inrange-hover-bg-color);
}

.cm-date-table td.current:not(.disabled) .cm-date-table-cell__text {
  color: #fff;
  background-color: var(--cm-datepicker-active-color);
}

.cm-date-table td.current:not(.disabled):focus-visible .cm-date-table-cell__text {
  outline: 2px solid var(--cm-datepicker-active-color);
  outline-offset: 1px;
}

.cm-date-table td.end-date .cm-date-table-cell,
.cm-date-table td.start-date .cm-date-table-cell {
  color: #fff;
}

.cm-date-table td.end-date .cm-date-table-cell__text,
.cm-date-table td.start-date .cm-date-table-cell__text {
  background-color: var(--cm-datepicker-active-color);
}

.cm-date-table td.start-date .cm-date-table-cell {
  margin-left: 5px;
  border-top-left-radius: 15px;
  border-bottom-left-radius: 15px;
}

.cm-date-table td.end-date .cm-date-table-cell {
  margin-right: 5px;
  border-top-right-radius: 15px;
  border-bottom-right-radius: 15px;
}

.cm-date-table td.disabled .cm-date-table-cell {
  background-color: var(--cm-fill-color-light);
  opacity: 1;
  cursor: not-allowed;
  color: var(--cm-text-color-placeholder);
}

.cm-date-table td.selected .cm-date-table-cell {
  margin-left: 5px;
  margin-right: 5px;
  background-color: var(--cm-datepicker-inrange-bg-color);
  border-radius: 15px;
}

.cm-date-table td.selected .cm-date-table-cell:hover {
  background-color: var(--cm-datepicker-inrange-hover-bg-color);
}

.cm-date-table td.selected .cm-date-table-cell__text {
  background-color: var(--cm-datepicker-active-color);
  color: #fff;
  border-radius: 15px;
}

.cm-date-table td.week {
  font-size: 80%;
  color: var(--cm-datepicker-header-text-color);
}

.cm-date-table td:focus {
  outline: 0;
}

.cm-date-table th {
  padding: 5px;
  color: var(--cm-datepicker-header-text-color);
  font-weight: 400;
  border-bottom: solid 1px var(--cm-border-color-lighter);
}

.cm-month-table {
  font-size: 12px;
  margin: -1px;
  border-collapse: collapse;
}

.cm-month-table td {
  text-align: center;
  padding: 8px 0;
  cursor: pointer;
}

.cm-month-table td div {
  height: 48px;
  padding: 6px 0;
  box-sizing: border-box;
}

.cm-month-table td.today .cell {
  color: var(--cm-color-primary);
  font-weight: 700;
}

.cm-month-table td.today.end-date .cell,
.cm-month-table td.today.start-date .cell {
  color: #fff;
}

.cm-month-table td.disabled .cell {
  background-color: var(--cm-fill-color-light);
  cursor: not-allowed;
  color: var(--cm-text-color-placeholder);
}

.cm-month-table td.disabled .cell:hover {
  color: var(--cm-text-color-placeholder);
}

.cm-month-table td .cell {
  width: 60px;
  height: 36px;
  display: block;
  line-height: 36px;
  color: var(--cm-datepicker-text-color);
  margin: 0 auto;
  border-radius: 18px;
}

.cm-month-table td .cell:hover {
  color: var(--cm-datepicker-hover-text-color);
}

.cm-month-table td.in-range div {
  background-color: var(--cm-datepicker-inrange-bg-color);
}

.cm-month-table td.in-range div:hover {
  background-color: var(--cm-datepicker-inrange-hover-bg-color);
}

.cm-month-table td.end-date div,
.cm-month-table td.start-date div {
  color: #fff;
}

.cm-month-table td.end-date .cell,
.cm-month-table td.start-date .cell {
  color: #fff;
  background-color: var(--cm-datepicker-active-color);
}

.cm-month-table td.start-date div {
  border-top-left-radius: 24px;
  border-bottom-left-radius: 24px;
}

.cm-month-table td.end-date div {
  border-top-right-radius: 24px;
  border-bottom-right-radius: 24px;
}

.cm-month-table td.current:not(.disabled) .cell {
  color: var(--cm-datepicker-active-color);
}

.cm-month-table td:focus-visible {
  outline: 0;
}

.cm-month-table td:focus-visible .cell {
  outline: 2px solid var(--cm-datepicker-active-color);
}

.cm-year-table {
  font-size: 12px;
  margin: -1px;
  border-collapse: collapse;
}

.cm-year-table .cm-icon {
  color: var(--cm-datepicker-icon-color);
}

.cm-year-table td {
  text-align: center;
  padding: 20px 3px;
  cursor: pointer;
}

.cm-year-table td.today .cell {
  color: var(--cm-color-primary);
  font-weight: 700;
}

.cm-year-table td.disabled .cell {
  background-color: var(--cm-fill-color-light);
  cursor: not-allowed;
  color: var(--cm-text-color-placeholder);
}

.cm-year-table td.disabled .cell:hover {
  color: var(--cm-text-color-placeholder);
}

.cm-year-table td .cell {
  width: 48px;
  height: 36px;
  display: block;
  line-height: 36px;
  color: var(--cm-datepicker-text-color);
  border-radius: 18px;
  margin: 0 auto;
}

.cm-year-table td .cell:hover {
  color: var(--cm-datepicker-hover-text-color);
}

.cm-year-table td.current:not(.disabled) .cell {
  color: var(--cm-datepicker-active-color);
}

.cm-year-table td:focus-visible {
  outline: 0;
}

.cm-year-table td:focus-visible .cell {
  outline: 2px solid var(--cm-datepicker-active-color);
}

.cm-time-spinner.has-seconds .cm-time-spinner__wrapper {
  width: 33.3%;
}

.cm-time-spinner__wrapper {
  max-height: 192px;
  overflow: auto;
  display: inline-block;
  width: 50%;
  vertical-align: top;
  position: relative;
}

.cm-time-spinner__wrapper.cm-scrollbar__wrap:not(.cm-scrollbar__wrap--hidden-default) {
  padding-bottom: 15px;
}

.cm-time-spinner__wrapper.is-arrow {
  box-sizing: border-box;
  text-align: center;
  overflow: hidden;
}

.cm-time-spinner__wrapper.is-arrow .cm-time-spinner__list {
  transform: translateY(-32px);
}

.cm-time-spinner__wrapper.is-arrow .cm-time-spinner__item:hover:not(.is-disabled):not(.is-active) {
  background: var(--cm-fill-color-light);
  cursor: default;
}

.cm-time-spinner__arrow {
  font-size: 12px;
  color: var(--cm-text-color-secondary);
  position: absolute;
  left: 0;
  width: 100%;
  z-index: var(--cm-index-normal);
  text-align: center;
  height: 30px;
  line-height: 30px;
  cursor: pointer;
}

.cm-time-spinner__arrow:hover {
  color: var(--cm-color-primary);
}

.cm-time-spinner__arrow.arrow-up {
  top: 10px;
}

.cm-time-spinner__arrow.arrow-down {
  bottom: 10px;
}

.cm-time-spinner__input.cm-input {
  width: 70%;
}

.cm-time-spinner__input.cm-input .cm-input__inner {
  padding: 0;
  text-align: center;
}

.cm-time-spinner__list {
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}

.cm-time-spinner__list::after,
.cm-time-spinner__list::before {
  content: "";
  display: block;
  width: 100%;
  height: 80px;
}

.cm-time-spinner__item {
  height: 32px;
  line-height: 32px;
  font-size: 12px;
  color: var(--cm-text-color-regular);
}

.cm-time-spinner__item:hover:not(.is-disabled):not(.is-active) {
  background: var(--cm-fill-color-light);
  cursor: pointer;
}

.cm-time-spinner__item.is-active:not(.is-disabled) {
  color: var(--cm-text-color-primary);
  font-weight: 700;
}

.cm-time-spinner__item.is-disabled {
  color: var(--cm-text-color-placeholder);
  cursor: not-allowed;
}

.cm-picker__popper {
  --cm-datepicker-border-color: var(--cm-disabled-border-color);
}

.cm-picker__popper.cm-popper {
  background: var(--cm-bg-color-overlay);
  border: 1px solid var(--cm-datepicker-border-color);
  box-shadow: var(--cm-box-shadow-light);
}

.cm-picker__popper.cm-popper .cm-popper__arrow::before {
  border: 1px solid var(--cm-datepicker-border-color);
}

.cm-picker__popper.cm-popper[data-popper-placement^=top] .cm-popper__arrow::before {
  border-top-color: transparent;
  border-left-color: transparent;
}

.cm-picker__popper.cm-popper[data-popper-placement^=bottom] .cm-popper__arrow::before {
  border-bottom-color: transparent;
  border-right-color: transparent;
}

.cm-picker__popper.cm-popper[data-popper-placement^=left] .cm-popper__arrow::before {
  border-left-color: transparent;
  border-bottom-color: transparent;
}

.cm-picker__popper.cm-popper[data-popper-placement^=right] .cm-popper__arrow::before {
  border-right-color: transparent;
  border-top-color: transparent;
}

.cm-date-editor {
  --cm-date-editor-width: 220px;
  --cm-date-editor-monthrange-width: 300px;
  --cm-date-editor-daterange-width: 350px;
  --cm-date-editor-datetimerange-width: 400px;
  --cm-input-text-color: var(--cm-text-color-regular);
  --cm-input-border: var(--cm-border);
  --cm-input-hover-border: var(--cm-border-color-hover);
  --cm-input-focus-border: var(--cm-color-primary);
  --cm-input-transparent-border: 0 0 0 1px transparent inset;
  --cm-input-border-color: var(--cm-border-color);
  --cm-input-border-radius: var(--cm-border-radius-base);
  --cm-input-bg-color: var(--cm-fill-color-blank);
  --cm-input-icon-color: var(--cm-text-color-placeholder);
  --cm-input-placeholder-color: var(--cm-text-color-placeholder);
  --cm-input-hover-border-color: var(--cm-border-color-hover);
  --cm-input-clear-hover-color: var(--cm-text-color-secondary);
  --cm-input-focus-border-color: var(--cm-color-primary);
  --cm-input-width: 100%;
  position: relative;
  text-align: left;
}

.cm-date-editor.cm-input__wrapper {
  box-shadow: 0 0 0 1px var(--cm-input-border-color, var(--cm-border-color)) inset;
}

.cm-date-editor.cm-input__wrapper:hover {
  box-shadow: 0 0 0 1px var(--cm-input-hover-border-color) inset;
}

.cm-date-editor.cm-input,
.cm-date-editor.cm-input__wrapper {
  width: var(--cm-date-editor-width);
  height: var(--cm-input-height, var(--cm-component-size));
}

.cm-date-editor--monthrange {
  --cm-date-editor-width: var(--cm-date-editor-monthrange-width);
}

.cm-date-editor--daterange,
.cm-date-editor--timerange {
  --cm-date-editor-width: var(--cm-date-editor-daterange-width);
}

.cm-date-editor--datetimerange {
  --cm-date-editor-width: var(--cm-date-editor-datetimerange-width);
}

.cm-date-editor--dates .cm-input__wrapper {
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cm-date-editor .close-icon {
  cursor: pointer;
}

.cm-date-editor .clear-icon {
  cursor: pointer;
}

.cm-date-editor .clear-icon:hover {
  color: var(--cm-text-color-secondary);
}

.cm-date-editor .cm-range__icon {
  height: inherit;
  font-size: 14px;
  color: var(--cm-text-color-placeholder);
  float: left;
}

.cm-date-editor .cm-range__icon svg {
  vertical-align: middle;
}

.cm-date-editor .cm-range-input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: 0;
  display: inline-block;
  height: 30px;
  line-height: 30px;
  margin: 0;
  padding: 0;
  width: 39%;
  text-align: center;
  font-size: var(--cm-font-size-base);
  color: var(--cm-text-color-regular);
  background-color: transparent;
}

.cm-date-editor .cm-range-input::-moz-placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-date-editor .cm-range-input:-ms-input-placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-date-editor .cm-range-input::placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-date-editor .cm-range-separator {
  flex: 1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  padding: 0 5px;
  margin: 0;
  font-size: 14px;
  word-break: keep-all;
  color: var(--cm-text-color-primary);
}

.cm-date-editor .cm-range__close-icon {
  font-size: 14px;
  color: var(--cm-text-color-placeholder);
  height: inherit;
  width: unset;
  cursor: pointer;
}

.cm-date-editor .cm-range__close-icon:hover {
  color: var(--cm-text-color-secondary);
}

.cm-date-editor .cm-range__close-icon svg {
  vertical-align: middle;
}

.cm-date-editor .cm-range__close-icon--hidden {
  opacity: 0;
  visibility: hidden;
}

.cm-range-editor.cm-input__wrapper {
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
}

.cm-range-editor.is-active {
  box-shadow: 0 0 0 1px var(--cm-input-focus-border-color) inset;
}

.cm-range-editor.is-active:hover {
  box-shadow: 0 0 0 1px var(--cm-input-focus-border-color) inset;
}

.cm-range-editor--large {
  line-height: var(--cm-component-size-large);
}

.cm-range-editor--large.cm-input__wrapper {
  height: var(--cm-component-size-large);
}

.cm-range-editor--large .cm-range-separator {
  line-height: 40px;
  font-size: 14px;
}

.cm-range-editor--large .cm-range-input {
  height: 38px;
  line-height: 38px;
  font-size: 14px;
}

.cm-range-editor--small {
  line-height: var(--cm-component-size-small);
}

.cm-range-editor--small.cm-input__wrapper {
  height: var(--cm-component-size-small);
}

.cm-range-editor--small .cm-range-separator {
  line-height: 24px;
  font-size: 12px;
}

.cm-range-editor--small .cm-range-input {
  height: 22px;
  line-height: 22px;
  font-size: 12px;
}

.cm-range-editor.is-disabled {
  background-color: var(--cm-disabled-bg-color);
  border-color: var(--cm-disabled-border-color);
  color: var(--cm-disabled-text-color);
  cursor: not-allowed;
}

.cm-range-editor.is-disabled:focus,
.cm-range-editor.is-disabled:hover {
  border-color: var(--cm-disabled-border-color);
}

.cm-range-editor.is-disabled input {
  background-color: var(--cm-disabled-bg-color);
  color: var(--cm-disabled-text-color);
  cursor: not-allowed;
}

.cm-range-editor.is-disabled input::-moz-placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-range-editor.is-disabled input:-ms-input-placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-range-editor.is-disabled input::placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-range-editor.is-disabled .cm-range-separator {
  color: var(--cm-disabled-text-color);
}

.cm-picker-panel {
  color: var(--cm-text-color-regular);
  background: var(--cm-bg-color-overlay);
  border-radius: var(--cm-border-radius-base);
  line-height: 30px;
}

.cm-picker-panel .cm-time-panel {
  margin: 5px 0;
  border: solid 1px var(--cm-datepicker-border-color);
  background-color: var(--cm-bg-color-overlay);
  box-shadow: var(--cm-box-shadow-light);
}

.cm-picker-panel__body-wrapper::after,
.cm-picker-panel__body::after {
  content: "";
  display: table;
  clear: both;
}

.cm-picker-panel__content {
  position: relative;
  margin: 15px;
}

.cm-picker-panel__footer {
  border-top: 1px solid var(--cm-datepicker-inner-border-color);
  padding: 4px 12px;
  text-align: right;
  background-color: var(--cm-bg-color-overlay);
  position: relative;
  font-size: 0;
}

.cm-picker-panel__shortcut {
  display: block;
  width: 100%;
  border: 0;
  background-color: transparent;
  line-height: 28px;
  font-size: 14px;
  color: var(--cm-datepicker-text-color);
  padding-left: 12px;
  text-align: left;
  outline: 0;
  cursor: pointer;
}

.cm-picker-panel__shortcut:hover {
  color: var(--cm-datepicker-hover-text-color);
}

.cm-picker-panel__shortcut.active {
  background-color: #e6f1fe;
  color: var(--cm-datepicker-active-color);
}

.cm-picker-panel__btn {
  border: 1px solid var(--cm-fill-color-darker);
  color: var(--cm-text-color-primary);
  line-height: 24px;
  border-radius: 2px;
  padding: 0 20px;
  cursor: pointer;
  background-color: transparent;
  outline: 0;
  font-size: 12px;
}

.cm-picker-panel__btn[disabled] {
  color: var(--cm-text-color-disabled);
  cursor: not-allowed;
}

.cm-picker-panel__icon-btn {
  font-size: 12px;
  color: var(--cm-datepicker-icon-color);
  border: 0;
  background: 0 0;
  cursor: pointer;
  outline: 0;
  margin-top: 8px;
}

.cm-picker-panel__icon-btn:hover {
  color: var(--cm-datepicker-hover-text-color);
}

.cm-picker-panel__icon-btn:focus-visible {
  color: var(--cm-datepicker-hover-text-color);
}

.cm-picker-panel__icon-btn.is-disabled {
  color: var(--cm-text-color-disabled);
}

.cm-picker-panel__icon-btn.is-disabled:hover {
  cursor: not-allowed;
}

.cm-picker-panel__icon-btn .cm-icon {
  cursor: pointer;
  font-size: inherit;
}

.cm-picker-panel__link-btn {
  vertical-align: middle;
}

.cm-picker-panel [slot=sidebar],
.cm-picker-panel__sidebar {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 110px;
  border-right: 1px solid var(--cm-datepicker-inner-border-color);
  box-sizing: border-box;
  padding-top: 6px;
  background-color: var(--cm-bg-color-overlay);
  overflow: auto;
}

.cm-picker-panel [slot=sidebar] + .cm-picker-panel__body,
.cm-picker-panel__sidebar + .cm-picker-panel__body {
  margin-left: 110px;
}

.cm-date-picker {
  --cm-datepicker-text-color: var(--cm-text-color-regular);
  --cm-datepicker-off-text-color: var(--cm-text-color-placeholder);
  --cm-datepicker-header-text-color: var(--cm-text-color-regular);
  --cm-datepicker-icon-color: var(--cm-text-color-primary);
  --cm-datepicker-border-color: var(--cm-disabled-border-color);
  --cm-datepicker-inner-border-color: var(--cm-border-color-light);
  --cm-datepicker-inrange-bg-color: var(--cm-border-color-extra-light);
  --cm-datepicker-inrange-hover-bg-color: var(--cm-border-color-extra-light);
  --cm-datepicker-active-color: var(--cm-color-primary);
  --cm-datepicker-hover-text-color: var(--cm-color-primary);
}

.cm-date-picker {
  width: 322px;
}

.cm-date-picker.has-sidebar.has-time {
  width: 434px;
}

.cm-date-picker.has-sidebar {
  width: 438px;
}

.cm-date-picker.has-time .cm-picker-panel__body-wrapper {
  position: relative;
}

.cm-date-picker .cm-picker-panel__content {
  width: 292px;
}

.cm-date-picker table {
  table-layout: fixed;
  width: 100%;
}

.cm-date-picker__editor-wrap {
  position: relative;
  display: table-cell;
  padding: 0 5px;
}

.cm-date-picker__time-header {
  position: relative;
  border-bottom: 1px solid var(--cm-datepicker-inner-border-color);
  font-size: 12px;
  padding: 8px 5px 5px;
  display: table;
  width: 100%;
  box-sizing: border-box;
}

.cm-date-picker__header {
  margin: 12px;
  text-align: center;
}

.cm-date-picker__header--bordered {
  margin-bottom: 0;
  padding-bottom: 12px;
  border-bottom: solid 1px var(--cm-border-color-lighter);
}

.cm-date-picker__header--bordered + .cm-picker-panel__content {
  margin-top: 0;
}

.cm-date-picker__header-label {
  font-size: 16px;
  font-weight: 500;
  padding: 0 5px;
  line-height: 22px;
  text-align: center;
  cursor: pointer;
  color: var(--cm-text-color-regular);
}

.cm-date-picker__header-label:hover {
  color: var(--cm-datepicker-hover-text-color);
}

.cm-date-picker__header-label:focus-visible {
  outline: 0;
  color: var(--cm-datepicker-hover-text-color);
}

.cm-date-picker__header-label.active {
  color: var(--cm-datepicker-active-color);
}

.cm-date-picker__prev-btn {
  float: left;
}

.cm-date-picker__next-btn {
  float: right;
}

.cm-date-picker__time-wrap {
  padding: 10px;
  text-align: center;
}

.cm-date-picker__time-label {
  float: left;
  cursor: pointer;
  line-height: 30px;
  margin-left: 10px;
}

.cm-date-picker .cm-time-panel {
  position: absolute;
}

.cm-date-range-picker {
  --cm-datepicker-text-color: var(--cm-text-color-regular);
  --cm-datepicker-off-text-color: var(--cm-text-color-placeholder);
  --cm-datepicker-header-text-color: var(--cm-text-color-regular);
  --cm-datepicker-icon-color: var(--cm-text-color-primary);
  --cm-datepicker-border-color: var(--cm-disabled-border-color);
  --cm-datepicker-inner-border-color: var(--cm-border-color-light);
  --cm-datepicker-inrange-bg-color: var(--cm-border-color-extra-light);
  --cm-datepicker-inrange-hover-bg-color: var(--cm-border-color-extra-light);
  --cm-datepicker-active-color: var(--cm-color-primary);
  --cm-datepicker-hover-text-color: var(--cm-color-primary);
}

.cm-date-range-picker {
  width: 646px;
}

.cm-date-range-picker.has-sidebar {
  width: 756px;
}

.cm-date-range-picker.has-time .cm-picker-panel__body-wrapper {
  position: relative;
}

.cm-date-range-picker table {
  table-layout: fixed;
  width: 100%;
}

.cm-date-range-picker .cm-picker-panel__body {
  min-width: 513px;
}

.cm-date-range-picker .cm-picker-panel__content {
  margin: 0;
}

.cm-date-range-picker__header {
  position: relative;
  text-align: center;
  height: 28px;
}

.cm-date-range-picker__header [class*=arrow-left] {
  float: left;
}

.cm-date-range-picker__header [class*=arrow-right] {
  float: right;
}

.cm-date-range-picker__header div {
  font-size: 16px;
  font-weight: 500;
  margin-right: 50px;
}

.cm-date-range-picker__content {
  float: left;
  width: 50%;
  box-sizing: border-box;
  margin: 0;
  padding: 16px;
}

.cm-date-range-picker__content.is-left {
  border-right: 1px solid var(--cm-datepicker-inner-border-color);
}

.cm-date-range-picker__content .cm-date-range-picker__header div {
  margin-left: 50px;
  margin-right: 50px;
}

.cm-date-range-picker__editors-wrap {
  box-sizing: border-box;
  display: table-cell;
}

.cm-date-range-picker__editors-wrap.is-right {
  text-align: right;
}

.cm-date-range-picker__time-header {
  position: relative;
  border-bottom: 1px solid var(--cm-datepicker-inner-border-color);
  font-size: 12px;
  padding: 8px 5px 5px 5px;
  display: table;
  width: 100%;
  box-sizing: border-box;
}

.cm-date-range-picker__time-header > .cm-icon-arrow-right {
  font-size: 20px;
  vertical-align: middle;
  display: table-cell;
  color: var(--cm-datepicker-icon-color);
}

.cm-date-range-picker__time-picker-wrap {
  position: relative;
  display: table-cell;
  padding: 0 5px;
}

.cm-date-range-picker__time-picker-wrap .cm-picker-panel {
  position: absolute;
  top: 13px;
  right: 0;
  z-index: 1;
  background: #fff;
}

.cm-date-range-picker__time-picker-wrap .cm-time-panel {
  position: absolute;
}

.cm-time-range-picker {
  width: 354px;
  overflow: visible;
}

.cm-time-range-picker__content {
  position: relative;
  text-align: center;
  padding: 10px;
  z-index: 1;
}

.cm-time-range-picker__cell {
  box-sizing: border-box;
  margin: 0;
  padding: 4px 7px 7px;
  width: 50%;
  display: inline-block;
}

.cm-time-range-picker__header {
  margin-bottom: 5px;
  text-align: center;
  font-size: 14px;
}

.cm-time-range-picker__body {
  border-radius: 2px;
  border: 1px solid var(--cm-datepicker-border-color);
}

.cm-time-panel {
  border-radius: 2px;
  position: relative;
  width: 180px;
  left: 0;
  z-index: var(--cm-index-top);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  box-sizing: content-box;
}

.cm-time-panel__content {
  font-size: 0;
  position: relative;
  overflow: hidden;
}

.cm-time-panel__content::after,
.cm-time-panel__content::before {
  content: "";
  top: 50%;
  position: absolute;
  margin-top: -16px;
  height: 32px;
  z-index: -1;
  left: 0;
  right: 0;
  box-sizing: border-box;
  padding-top: 6px;
  text-align: left;
}

.cm-time-panel__content::after {
  left: 50%;
  margin-left: 12%;
  margin-right: 12%;
}

.cm-time-panel__content::before {
  padding-left: 50%;
  margin-right: 12%;
  margin-left: 12%;
  border-top: 1px solid var(--cm-border-color-light);
  border-bottom: 1px solid var(--cm-border-color-light);
}

.cm-time-panel__content.has-seconds::after {
  left: 66.6666666667%;
}

.cm-time-panel__content.has-seconds::before {
  padding-left: 33.3333333333%;
}

.cm-time-panel__footer {
  border-top: 1px solid var(--cm-timepicker-inner-border-color, var(--cm-border-color-light));
  padding: 4px;
  height: 36px;
  line-height: 25px;
  text-align: right;
  box-sizing: border-box;
}

.cm-time-panel__btn {
  border: none;
  line-height: 28px;
  padding: 0 5px;
  margin: 0 5px;
  cursor: pointer;
  background-color: transparent;
  outline: 0;
  font-size: 12px;
  color: var(--cm-text-color-primary);
}

.cm-time-panel__btn.confirm {
  font-weight: 800;
  color: var(--cm-timepicker-active-color, var(--cm-color-primary));
}

.cm-descriptions {
  --cm-descriptions-table-border: 1px solid var(--cm-border-color-lighter);
  --cm-descriptions-item-bordered-labcm-background: var(--cm-fill-color-light);
  box-sizing: border-box;
  font-size: var(--cm-font-size-base);
  color: var(--cm-text-color-primary);
}

.cm-descriptions__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}

.cm-descriptions__title {
  color: var(--cm-text-color-primary);
  font-size: 16px;
  font-weight: 700;
}

.cm-descriptions__body {
  background-color: var(--cm-fill-color-blank);
}

.cm-descriptions__body .cm-descriptions__table {
  border-collapse: collapse;
  width: 100%;
}

.cm-descriptions__body .cm-descriptions__table .cm-descriptions__cell {
  box-sizing: border-box;
  text-align: left;
  font-weight: 400;
  line-height: 23px;
  font-size: 14px;
}

.cm-descriptions__body .cm-descriptions__table .cm-descriptions__cell.is-left {
  text-align: left;
}

.cm-descriptions__body .cm-descriptions__table .cm-descriptions__cell.is-center {
  text-align: center;
}

.cm-descriptions__body .cm-descriptions__table .cm-descriptions__cell.is-right {
  text-align: right;
}

.cm-descriptions__body .cm-descriptions__table.is-bordered .cm-descriptions__cell {
  border: var(--cm-descriptions-table-border);
  padding: 8px 11px;
}

.cm-descriptions__body .cm-descriptions__table:not(.is-bordered) .cm-descriptions__cell {
  padding-bottom: 12px;
}

.cm-descriptions--large {
  font-size: 14px;
}

.cm-descriptions--large .cm-descriptions__header {
  margin-bottom: 20px;
}

.cm-descriptions--large .cm-descriptions__header .cm-descriptions__title {
  font-size: 16px;
}

.cm-descriptions--large .cm-descriptions__body .cm-descriptions__table .cm-descriptions__cell {
  font-size: 14px;
}

.cm-descriptions--large .cm-descriptions__body .cm-descriptions__table.is-bordered .cm-descriptions__cell {
  padding: 12px 15px;
}

.cm-descriptions--large .cm-descriptions__body .cm-descriptions__table:not(.is-bordered) .cm-descriptions__cell {
  padding-bottom: 16px;
}

.cm-descriptions--small {
  font-size: 12px;
}

.cm-descriptions--small .cm-descriptions__header {
  margin-bottom: 12px;
}

.cm-descriptions--small .cm-descriptions__header .cm-descriptions__title {
  font-size: 14px;
}

.cm-descriptions--small .cm-descriptions__body .cm-descriptions__table .cm-descriptions__cell {
  font-size: 12px;
}

.cm-descriptions--small .cm-descriptions__body .cm-descriptions__table.is-bordered .cm-descriptions__cell {
  padding: 4px 7px;
}

.cm-descriptions--small .cm-descriptions__body .cm-descriptions__table:not(.is-bordered) .cm-descriptions__cell {
  padding-bottom: 8px;
}

.cm-descriptions__label.cm-descriptions__cell.is-bordered-label {
  font-weight: 700;
  color: var(--cm-text-color-regular);
  background: var(--cm-descriptions-item-bordered-labcm-background);
}

.cm-descriptions__label:not(.is-bordered-label) {
  color: var(--cm-text-color-primary);
  margin-right: 16px;
}

.cm-descriptions__label.cm-descriptions__cell:not(.is-bordered-label).is-vertical-label {
  padding-bottom: 6px;
}

.cm-descriptions__content.cm-descriptions__cell.is-bordered-content {
  color: var(--cm-text-color-primary);
}

.cm-descriptions__content:not(.is-bordered-label) {
  color: var(--cm-text-color-regular);
}

.cm-descriptions--large .cm-descriptions__label:not(.is-bordered-label) {
  margin-right: 16px;
}

.cm-descriptions--large .cm-descriptions__label.cm-descriptions__cell:not(.is-bordered-label).is-vertical-label {
  padding-bottom: 8px;
}

.cm-descriptions--small .cm-descriptions__label:not(.is-bordered-label) {
  margin-right: 12px;
}

.cm-descriptions--small .cm-descriptions__label.cm-descriptions__cell:not(.is-bordered-label).is-vertical-label {
  padding-bottom: 4px;
}

:root {
  --cm-popup-modal-bg-color: var(--cm-color-black);
  --cm-popup-modal-opacity: 0.5;
}

.v-modal-enter {
  -webkit-animation: v-modal-in var(--cm-transition-duration-fast) ease;
  animation: v-modal-in var(--cm-transition-duration-fast) ease;
}

.v-modal-leave {
  -webkit-animation: v-modal-out var(--cm-transition-duration-fast) ease forwards;
  animation: v-modal-out var(--cm-transition-duration-fast) ease forwards;
}

@-webkit-keyframes v-modal-in {
  0% {
    opacity: 0;
  }
}
@keyframes v-modal-in {
  0% {
    opacity: 0;
  }
}
@-webkit-keyframes v-modal-out {
  100% {
    opacity: 0;
  }
}
@keyframes v-modal-out {
  100% {
    opacity: 0;
  }
}
.v-modal {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: var(--cm-popup-modal-opacity);
  background: var(--cm-popup-modal-bg-color);
}

.cm-popup-parent--hidden {
  overflow: hidden;
}

.cm-dialog {
  --cm-dialog-width: 50%;
  --cm-dialog-margin-top: 15vh;
  --cm-dialog-bg-color: var(--cm-bg-color);
  --cm-dialog-box-shadow: var(--cm-box-shadow);
  --cm-dialog-title-font-size: var(--cm-font-size-large);
  --cm-dialog-content-font-size: 14px;
  --cm-dialog-font-line-height: var(--cm-font-line-height-primary);
  --cm-dialog-padding-primary: 20px;
  --cm-dialog-border-radius: var(--cm-border-radius-small);
  position: relative;
  margin: var(--cm-dialog-margin-top, 15vh) auto 50px;
  background: var(--cm-dialog-bg-color);
  border-radius: var(--cm-dialog-border-radius);
  box-shadow: var(--cm-dialog-box-shadow);
  box-sizing: border-box;
  width: var(--cm-dialog-width, 50%);
}

.cm-dialog:focus {
  outline: 0 !important;
}

.cm-dialog.is-align-center {
  margin: auto;
}

.cm-dialog.is-fullscreen {
  --cm-dialog-width: 100%;
  --cm-dialog-margin-top: 0;
  margin-bottom: 0;
  height: 100%;
  overflow: auto;
}

.cm-dialog__wrapper {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: auto;
  margin: 0;
}

.cm-dialog.is-draggable .cm-dialog__header {
  cursor: move;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cm-dialog__header {
  padding: var(--cm-dialog-padding-primary);
  padding-bottom: 10px;
  margin-right: 16px;
  background-image: none;
}

.cm-dialog__headerbtn {
  position: absolute;
  top: 6px;
  right: 0;
  padding: 0;
  width: 54px;
  height: 54px;
  background: 0 0;
  border: none;
  outline: 0;
  cursor: pointer;
  font-size: var(--cm-message-close-size, 16px);
}

.cm-dialog__headerbtn .cm-dialog__close {
  color: var(--cm-color-info);
  font-size: inherit;
}

.cm-dialog__headerbtn:focus .cm-dialog__close,
.cm-dialog__headerbtn:hover .cm-dialog__close {
  color: var(--cm-color-primary);
}

.cm-dialog__title {
  line-height: var(--cm-dialog-font-line-height);
  font-size: var(--cm-dialog-title-font-size);
  color: var(--cm-text-color-primary);
}

.cm-dialog__body {
  padding: calc(var(--cm-dialog-padding-primary) + 10px) var(--cm-dialog-padding-primary);
  color: var(--cm-text-color-regular);
  font-size: var(--cm-dialog-content-font-size);
}

.cm-dialog__footer {
  padding: var(--cm-dialog-padding-primary);
  padding-top: 10px;
  text-align: right;
  box-sizing: border-box;
}

.cm-dialog--center {
  text-align: center;
}

.cm-dialog--center .cm-dialog__body {
  text-align: initial;
  padding: 25px calc(var(--cm-dialog-padding-primary) + 5px) 30px;
}

.cm-dialog--center .cm-dialog__footer {
  text-align: inherit;
}

.cm-overlay-dialog {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: auto;
}

.dialog-fade-enter-active {
  -webkit-animation: modal-fade-in var(--cm-transition-duration);
  animation: modal-fade-in var(--cm-transition-duration);
}

.dialog-fade-enter-active .cm-overlay-dialog {
  -webkit-animation: dialog-fade-in var(--cm-transition-duration);
  animation: dialog-fade-in var(--cm-transition-duration);
}

.dialog-fade-leave-active {
  -webkit-animation: modal-fade-out var(--cm-transition-duration);
  animation: modal-fade-out var(--cm-transition-duration);
}

.dialog-fade-leave-active .cm-overlay-dialog {
  -webkit-animation: dialog-fade-out var(--cm-transition-duration);
  animation: dialog-fade-out var(--cm-transition-duration);
}

@-webkit-keyframes dialog-fade-in {
  0% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes dialog-fade-in {
  0% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes dialog-fade-out {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
}
@keyframes dialog-fade-out {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
}
@-webkit-keyframes modal-fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes modal-fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes modal-fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes modal-fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.cm-divider {
  position: relative;
}

.cm-divider--horizontal {
  display: block;
  height: 1px;
  width: 100%;
  margin: 24px 0;
  border-top: 1px var(--cm-border-color) var(--cm-border-style);
}

.cm-divider--vertical {
  display: inline-block;
  width: 1px;
  height: 1em;
  margin: 0 8px;
  vertical-align: middle;
  position: relative;
  border-left: 1px var(--cm-border-color) var(--cm-border-style);
}

.cm-divider__text {
  position: absolute;
  background-color: var(--cm-bg-color);
  padding: 0 20px;
  font-weight: 500;
  color: var(--cm-text-color-primary);
  font-size: 14px;
}

.cm-divider__text.is-left {
  left: 20px;
  transform: translateY(-50%);
}

.cm-divider__text.is-center {
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

.cm-divider__text.is-right {
  right: 20px;
  transform: translateY(-50%);
}

.cm-drawer {
  --cm-drawer-bg-color: var(--cm-dialog-bg-color, var(--cm-bg-color));
  --cm-drawer-padding-primary: var(--cm-dialog-padding-primary, 20px);
}

.cm-drawer {
  position: absolute;
  box-sizing: border-box;
  background-color: var(--cm-drawer-bg-color);
  display: flex;
  flex-direction: column;
  box-shadow: var(--cm-box-shadow-dark);
  overflow: hidden;
  transition: all var(--cm-transition-duration);
}

.cm-drawer .rtl {
  transform: translate(0, 0);
}

.cm-drawer .ltr {
  transform: translate(0, 0);
}

.cm-drawer .ttb {
  transform: translate(0, 0);
}

.cm-drawer .btt {
  transform: translate(0, 0);
}

.cm-drawer__sr-focus:focus {
  outline: 0 !important;
}

.cm-drawer__header {
  align-items: center;
  color: #72767b;
  display: flex;
  margin-bottom: 32px;
  padding: var(--cm-drawer-padding-primary);
  padding-bottom: 0;
}

.cm-drawer__header > :first-child {
  flex: 1;
}

.cm-drawer__title {
  margin: 0;
  flex: 1;
  line-height: inherit;
  font-size: 1rem;
}

.cm-drawer__footer {
  padding: var(--cm-drawer-padding-primary);
  padding-top: 10px;
  text-align: right;
}

.cm-drawer__close-btn {
  display: inline-flex;
  border: none;
  cursor: pointer;
  font-size: var(--cm-font-size-extra-large);
  color: inherit;
  background-color: transparent;
  outline: 0;
}

.cm-drawer__close-btn:focus i,
.cm-drawer__close-btn:hover i {
  color: var(--cm-color-primary);
}

.cm-drawer__body {
  flex: 1;
  padding: var(--cm-drawer-padding-primary);
  overflow: auto;
}

.cm-drawer__body > * {
  box-sizing: border-box;
}

.cm-drawer.ltr,
.cm-drawer.rtl {
  height: 100%;
  top: 0;
  bottom: 0;
}

.cm-drawer.btt,
.cm-drawer.ttb {
  width: 100%;
  left: 0;
  right: 0;
}

.cm-drawer.ltr {
  left: 0;
}

.cm-drawer.rtl {
  right: 0;
}

.cm-drawer.ttb {
  top: 0;
}

.cm-drawer.btt {
  bottom: 0;
}

.cm-drawer-fade-enter-active,
.cm-drawer-fade-leave-active {
  transition: all var(--cm-transition-duration);
}

.cm-drawer-fade-enter-active,
.cm-drawer-fade-enter-from,
.cm-drawer-fade-enter-to,
.cm-drawer-fade-leave-active,
.cm-drawer-fade-leave-from,
.cm-drawer-fade-leave-to {
  overflow: hidden !important;
}

.cm-drawer-fade-enter-from,
.cm-drawer-fade-leave-to {
  opacity: 0;
}

.cm-drawer-fade-enter-to,
.cm-drawer-fade-leave-from {
  opacity: 1;
}

.cm-drawer-fade-enter-from .rtl,
.cm-drawer-fade-leave-to .rtl {
  transform: translateX(100%);
}

.cm-drawer-fade-enter-from .ltr,
.cm-drawer-fade-leave-to .ltr {
  transform: translateX(-100%);
}

.cm-drawer-fade-enter-from .ttb,
.cm-drawer-fade-leave-to .ttb {
  transform: translateY(-100%);
}

.cm-drawer-fade-enter-from .btt,
.cm-drawer-fade-leave-to .btt {
  transform: translateY(100%);
}

.cm-dropdown {
  --cm-dropdown-menu-box-shadow: var(--cm-box-shadow-light);
  --cm-dropdown-menuItem-hover-fill: var(--cm-color-primary-light-9);
  --cm-dropdown-menuItem-hover-color: var(--cm-color-primary);
  --cm-dropdown-menu-index: 10;
  display: inline-flex;
  position: relative;
  color: var(--cm-text-color-regular);
  font-size: var(--cm-font-size-base);
  line-height: 1;
  vertical-align: top;
}

.cm-dropdown.is-disabled {
  color: var(--cm-text-color-placeholder);
  cursor: not-allowed;
}

.cm-dropdown__popper {
  --cm-dropdown-menu-box-shadow: var(--cm-box-shadow-light);
  --cm-dropdown-menuItem-hover-fill: var(--cm-color-primary-light-9);
  --cm-dropdown-menuItem-hover-color: var(--cm-color-primary);
  --cm-dropdown-menu-index: 10;
}

.cm-dropdown__popper.cm-popper {
  background: var(--cm-bg-color-overlay);
  border: 1px solid var(--cm-border-color-light);
  box-shadow: var(--cm-dropdown-menu-box-shadow);
}

.cm-dropdown__popper.cm-popper .cm-popper__arrow::before {
  border: 1px solid var(--cm-border-color-light);
}

.cm-dropdown__popper.cm-popper[data-popper-placement^=top] .cm-popper__arrow::before {
  border-top-color: transparent;
  border-left-color: transparent;
}

.cm-dropdown__popper.cm-popper[data-popper-placement^=bottom] .cm-popper__arrow::before {
  border-bottom-color: transparent;
  border-right-color: transparent;
}

.cm-dropdown__popper.cm-popper[data-popper-placement^=left] .cm-popper__arrow::before {
  border-left-color: transparent;
  border-bottom-color: transparent;
}

.cm-dropdown__popper.cm-popper[data-popper-placement^=right] .cm-popper__arrow::before {
  border-right-color: transparent;
  border-top-color: transparent;
}

.cm-dropdown__popper .cm-dropdown-menu {
  border: none;
}

.cm-dropdown__popper .cm-dropdown__popper-selfdefine {
  outline: 0;
}

.cm-dropdown__popper .cm-scrollbar__bar {
  z-index: calc(var(--cm-dropdown-menu-index) + 1);
}

.cm-dropdown__popper .cm-dropdown__list {
  list-style: none;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

.cm-dropdown .cm-dropdown__caret-button {
  padding-left: 0;
  padding-right: 0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  border-left: none;
}

.cm-dropdown .cm-dropdown__caret-button > span {
  display: inline-flex;
}

.cm-dropdown .cm-dropdown__caret-button::before {
  content: "";
  position: absolute;
  display: block;
  width: 1px;
  top: -1px;
  bottom: -1px;
  left: 0;
  background: var(--cm-overlay-color-lighter);
}

.cm-dropdown .cm-dropdown__caret-button.cm-button::before {
  background: var(--cm-border-color);
  opacity: 0.5;
}

.cm-dropdown .cm-dropdown__caret-button .cm-dropdown__icon {
  font-size: inherit;
  padding-left: 0;
}

.cm-dropdown .cm-dropdown-selfdefine {
  outline: 0;
}

.cm-dropdown--large .cm-dropdown__caret-button {
  width: 40px;
}

.cm-dropdown--small .cm-dropdown__caret-button {
  width: 24px;
}

.cm-dropdown-menu {
  position: relative;
  top: 0;
  left: 0;
  z-index: var(--cm-dropdown-menu-index);
  padding: 5px 0;
  margin: 0;
  background-color: var(--cm-bg-color-overlay);
  border: none;
  border-radius: var(--cm-border-radius-base);
  box-shadow: none;
  list-style: none;
}

.cm-dropdown-menu__item {
  display: flex;
  align-items: center;
  white-space: nowrap;
  list-style: none;
  line-height: 22px;
  padding: 5px 16px;
  margin: 0;
  font-size: var(--cm-font-size-base);
  color: var(--cm-text-color-regular);
  cursor: pointer;
  outline: 0;
}

.cm-dropdown-menu__item:not(.is-disabled):focus {
  background-color: var(--cm-dropdown-menuItem-hover-fill);
  color: var(--cm-dropdown-menuItem-hover-color);
}

.cm-dropdown-menu__item i {
  margin-right: 5px;
}

.cm-dropdown-menu__item--divided {
  margin: 6px 0;
  border-top: 1px solid var(--cm-border-color-lighter);
}

.cm-dropdown-menu__item.is-disabled {
  cursor: not-allowed;
  color: var(--cm-text-color-disabled);
}

.cm-dropdown-menu--large {
  padding: 7px 0;
}

.cm-dropdown-menu--large .cm-dropdown-menu__item {
  padding: 7px 20px;
  line-height: 22px;
  font-size: 14px;
}

.cm-dropdown-menu--large .cm-dropdown-menu__item--divided {
  margin: 8px 0;
}

.cm-dropdown-menu--small {
  padding: 3px 0;
}

.cm-dropdown-menu--small .cm-dropdown-menu__item {
  padding: 2px 12px;
  line-height: 20px;
  font-size: 12px;
}

.cm-dropdown-menu--small .cm-dropdown-menu__item--divided {
  margin: 4px 0;
}

.cm-empty {
  --cm-empty-padding: 40px 0;
  --cm-empty-image-width: 160px;
  --cm-empty-description-margin-top: 20px;
  --cm-empty-bottom-margin-top: 20px;
  --cm-empty-fill-color-0: var(--cm-color-white);
  --cm-empty-fill-color-1: #fcfcfd;
  --cm-empty-fill-color-2: #f8f9fb;
  --cm-empty-fill-color-3: #f7f8fc;
  --cm-empty-fill-color-4: #eeeff3;
  --cm-empty-fill-color-5: #edeef2;
  --cm-empty-fill-color-6: #e9ebef;
  --cm-empty-fill-color-7: #e5e7e9;
  --cm-empty-fill-color-8: #e0e3e9;
  --cm-empty-fill-color-9: #d5d7de;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  box-sizing: border-box;
  padding: var(--cm-empty-padding);
}

.cm-empty__image {
  width: var(--cm-empty-image-width);
}

.cm-empty__image img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
  height: 100%;
  vertical-align: top;
  -o-object-fit: contain;
  object-fit: contain;
}

.cm-empty__image svg {
  color: var(--cm-svg-monochrome-grey);
  fill: currentColor;
  width: 100%;
  height: 100%;
  vertical-align: top;
}

.cm-empty__description {
  margin-top: var(--cm-empty-description-margin-top);
}

.cm-empty__description p {
  margin: 0;
  font-size: var(--cm-font-size-base);
  color: var(--cm-text-color-secondary);
}

.cm-empty__bottom {
  margin-top: var(--cm-empty-bottom-margin-top);
}

.cm-footer {
  --cm-footer-padding: 0 20px;
  --cm-footer-height: 60px;
  padding: var(--cm-footer-padding);
  box-sizing: border-box;
  flex-shrink: 0;
  height: var(--cm-footer-height);
}

.cm-form {
  --cm-form-labcm-font-size: var(--cm-font-size-base);
  --cm-form-inline-content-width: 220px;
}

.cm-form--labcm-left .cm-form-item__label {
  justify-content: flex-start;
}

.cm-form--labcm-top .cm-form-item {
  display: block;
}

.cm-form--labcm-top .cm-form-item .cm-form-item__label {
  display: block;
  height: auto;
  text-align: left;
  margin-bottom: 8px;
  line-height: 22px;
}

.cm-form--inline .cm-form-item {
  display: inline-flex;
  vertical-align: middle;
  margin-right: 32px;
}

.cm-form--inline.cm-form--labcm-top {
  display: flex;
  flex-wrap: wrap;
}

.cm-form--inline.cm-form--labcm-top .cm-form-item {
  display: block;
}

.cm-form--inline .cm-input {
  --cm-input-width: var(--cm-form-inline-content-width);
}

.cm-form--large.cm-form--labcm-top .cm-form-item .cm-form-item__label {
  margin-bottom: 12px;
  line-height: 22px;
}

.cm-form--default.cm-form--labcm-top .cm-form-item .cm-form-item__label {
  margin-bottom: 8px;
  line-height: 22px;
}

.cm-form--small.cm-form--labcm-top .cm-form-item .cm-form-item__label {
  margin-bottom: 4px;
  line-height: 20px;
}

.cm-form-item {
  display: flex;
  --font-size: 14px;
  margin-bottom: 18px;
}

.cm-form-item .cm-form-item {
  margin-bottom: 0;
}

.cm-form-item .cm-input__validateIcon {
  display: none;
}

.cm-form-item--large {
  --font-size: 14px;
  --cm-form-labcm-font-size: var(--font-size);
  margin-bottom: 22px;
}

.cm-form-item--large .cm-form-item__label {
  height: 40px;
  line-height: 40px;
}

.cm-form-item--large .cm-form-item__content {
  line-height: 40px;
}

.cm-form-item--large .cm-form-item__error {
  padding-top: 4px;
}

.cm-form-item--default {
  --font-size: 14px;
  --cm-form-labcm-font-size: var(--font-size);
  margin-bottom: 18px;
}

.cm-form-item--default .cm-form-item__label {
  height: 32px;
  line-height: 32px;
}

.cm-form-item--default .cm-form-item__content {
  line-height: 32px;
}

.cm-form-item--default .cm-form-item__error {
  padding-top: 2px;
}

.cm-form-item--small {
  --font-size: 12px;
  --cm-form-labcm-font-size: var(--font-size);
  margin-bottom: 18px;
}

.cm-form-item--small .cm-form-item__label {
  height: 24px;
  line-height: 24px;
}

.cm-form-item--small .cm-form-item__content {
  line-height: 24px;
}

.cm-form-item--small .cm-form-item__error {
  padding-top: 2px;
}

.cm-form-item__labcm-wrap {
  display: flex;
}

.cm-form-item__label {
  display: inline-flex;
  justify-content: flex-end;
  align-items: flex-start;
  flex: 0 0 auto;
  font-size: var(--cm-form-labcm-font-size);
  color: var(--cm-text-color-regular);
  height: 32px;
  line-height: 32px;
  padding: 0 12px 0 0;
  box-sizing: border-box;
}

.cm-form-item__content {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex: 1;
  line-height: 32px;
  position: relative;
  font-size: var(--font-size);
  min-width: 0;
}

.cm-form-item__content .cm-input-group {
  vertical-align: top;
}

.cm-form-item__error {
  color: var(--cm-color-danger);
  font-size: 12px;
  line-height: 1;
  padding-top: 2px;
  position: absolute;
  top: 100%;
  left: 0;
}

.cm-form-item__error--inline {
  position: relative;
  top: auto;
  left: auto;
  display: inline-block;
  margin-left: 10px;
}

.cm-form-item.is-required:not(.is-no-asterisk).asterisk-left > .cm-form-item__labcm-wrap > .cm-form-item__label:before,
.cm-form-item.is-required:not(.is-no-asterisk).asterisk-left > .cm-form-item__label:before {
  content: "*";
  color: var(--cm-color-danger);
  margin-right: 4px;
}

.cm-form-item.is-required:not(.is-no-asterisk).asterisk-right > .cm-form-item__labcm-wrap > .cm-form-item__label:after,
.cm-form-item.is-required:not(.is-no-asterisk).asterisk-right > .cm-form-item__label:after {
  content: "*";
  color: var(--cm-color-danger);
  margin-left: 4px;
}

.cm-form-item.is-error .cm-select-v2__wrapper.is-focused {
  border-color: transparent;
}

.cm-form-item.is-error .cm-select-v2__wrapper,
.cm-form-item.is-error .cm-select-v2__wrapper:focus,
.cm-form-item.is-error .cm-textarea__inner,
.cm-form-item.is-error .cm-textarea__inner:focus {
  box-shadow: 0 0 0 1px var(--cm-color-danger) inset;
}

.cm-form-item.is-error .cm-input__wrapper {
  box-shadow: 0 0 0 1px var(--cm-color-danger) inset;
}

.cm-form-item.is-error .cm-input-group__append .cm-input__wrapper,
.cm-form-item.is-error .cm-input-group__prepend .cm-input__wrapper {
  box-shadow: 0 0 0 1px transparent inset;
}

.cm-form-item.is-error .cm-input__validateIcon {
  color: var(--cm-color-danger);
}

.cm-form-item--feedback .cm-input__validateIcon {
  display: inline-flex;
}

.cm-header {
  --cm-header-padding: 0 20px;
  --cm-header-height: 60px;
  padding: var(--cm-header-padding);
  box-sizing: border-box;
  flex-shrink: 0;
  height: var(--cm-header-height);
}

.cm-image-viewer__wrapper {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.cm-image-viewer__btn {
  position: absolute;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  opacity: 0.8;
  cursor: pointer;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cm-image-viewer__btn .cm-icon {
  font-size: inherit;
  cursor: pointer;
}

.cm-image-viewer__close {
  top: 40px;
  right: 40px;
  width: 40px;
  height: 40px;
  font-size: 40px;
}

.cm-image-viewer__canvas {
  position: static;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cm-image-viewer__actions {
  left: 50%;
  bottom: 30px;
  transform: translateX(-50%);
  width: 282px;
  height: 44px;
  padding: 0 23px;
  background-color: var(--cm-text-color-regular);
  border-color: #fff;
  border-radius: 22px;
}

.cm-image-viewer__actions__inner {
  width: 100%;
  height: 100%;
  text-align: justify;
  cursor: default;
  font-size: 23px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.cm-image-viewer__prev {
  top: 50%;
  transform: translateY(-50%);
  left: 40px;
  width: 44px;
  height: 44px;
  font-size: 24px;
  color: #fff;
  background-color: var(--cm-text-color-regular);
  border-color: #fff;
}

.cm-image-viewer__next {
  top: 50%;
  transform: translateY(-50%);
  right: 40px;
  text-indent: 2px;
  width: 44px;
  height: 44px;
  font-size: 24px;
  color: #fff;
  background-color: var(--cm-text-color-regular);
  border-color: #fff;
}

.cm-image-viewer__close {
  width: 44px;
  height: 44px;
  font-size: 24px;
  color: #fff;
  background-color: var(--cm-text-color-regular);
  border-color: #fff;
}

.cm-image-viewer__mask {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.5;
  background: #000;
}

.viewer-fade-enter-active {
  -webkit-animation: viewer-fade-in var(--cm-transition-duration);
  animation: viewer-fade-in var(--cm-transition-duration);
}

.viewer-fade-leave-active {
  -webkit-animation: viewer-fade-out var(--cm-transition-duration);
  animation: viewer-fade-out var(--cm-transition-duration);
}

@-webkit-keyframes viewer-fade-in {
  0% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes viewer-fade-in {
  0% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes viewer-fade-out {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
}
@keyframes viewer-fade-out {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
}
.cm-image__error,
.cm-image__inner,
.cm-image__placeholder,
.cm-image__wrapper {
  width: 100%;
  height: 100%;
}

.cm-image {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

.cm-image__inner {
  vertical-align: top;
  opacity: 1;
}

.cm-image__inner.is-loading {
  opacity: 0;
}

.cm-image__wrapper {
  position: absolute;
  top: 0;
  left: 0;
}

.cm-image__placeholder {
  background: var(--cm-fill-color-light);
}

.cm-image__error {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  background: var(--cm-fill-color-light);
  color: var(--cm-text-color-placeholder);
  vertical-align: middle;
}

.cm-image__preview {
  cursor: pointer;
}

.cm-input-number {
  position: relative;
  display: inline-flex;
  width: 150px;
  line-height: 30px;
}

.cm-input-number .cm-input__wrapper {
  padding-left: 42px;
  padding-right: 42px;
}

.cm-input-number .cm-input__inner {
  -webkit-appearance: none;
  -moz-appearance: textfield;
  text-align: center;
  line-height: 1;
}

.cm-input-number .cm-input__inner::-webkit-inner-spin-button,
.cm-input-number .cm-input__inner::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.cm-input-number__decrease,
.cm-input-number__increase {
  display: flex;
  justify-content: center;
  align-items: center;
  height: auto;
  position: absolute;
  z-index: 1;
  top: 1px;
  bottom: 1px;
  width: 32px;
  background: var(--cm-fill-color-light);
  color: var(--cm-text-color-regular);
  cursor: pointer;
  font-size: 13px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cm-input-number__decrease:hover,
.cm-input-number__increase:hover {
  color: var(--cm-color-primary);
}

.cm-input-number__decrease:hover ~ .cm-input:not(.is-disabled) .cm-input__wrapper,
.cm-input-number__increase:hover ~ .cm-input:not(.is-disabled) .cm-input__wrapper {
  box-shadow: 0 0 0 1px var(--cm-input-focus-border-color, var(--cm-color-primary)) inset;
}

.cm-input-number__decrease.is-disabled,
.cm-input-number__increase.is-disabled {
  color: var(--cm-disabled-text-color);
  cursor: not-allowed;
}

.cm-input-number__increase {
  right: 1px;
  border-radius: 0 var(--cm-border-radius-base) var(--cm-border-radius-base) 0;
  border-left: var(--cm-border);
}

.cm-input-number__decrease {
  left: 1px;
  border-radius: var(--cm-border-radius-base) 0 0 var(--cm-border-radius-base);
  border-right: var(--cm-border);
}

.cm-input-number.is-disabled .cm-input-number__decrease,
.cm-input-number.is-disabled .cm-input-number__increase {
  border-color: var(--cm-disabled-border-color);
  color: var(--cm-disabled-border-color);
}

.cm-input-number.is-disabled .cm-input-number__decrease:hover,
.cm-input-number.is-disabled .cm-input-number__increase:hover {
  color: var(--cm-disabled-border-color);
  cursor: not-allowed;
}

.cm-input-number--large {
  width: 180px;
  line-height: 38px;
}

.cm-input-number--large .cm-input-number__decrease,
.cm-input-number--large .cm-input-number__increase {
  width: 40px;
  font-size: 14px;
}

.cm-input-number--large .cm-input__wrapper {
  padding-left: 47px;
  padding-right: 47px;
}

.cm-input-number--small {
  width: 120px;
  line-height: 22px;
}

.cm-input-number--small .cm-input-number__decrease,
.cm-input-number--small .cm-input-number__increase {
  width: 24px;
  font-size: 12px;
}

.cm-input-number--small .cm-input__wrapper {
  padding-left: 31px;
  padding-right: 31px;
}

.cm-input-number--small .cm-input-number__decrease [class*=cm-icon],
.cm-input-number--small .cm-input-number__increase [class*=cm-icon] {
  transform: scale(0.9);
}

.cm-input-number.is-without-controls .cm-input__wrapper {
  padding-left: 15px;
  padding-right: 15px;
}

.cm-input-number.is-controls-right .cm-input__wrapper {
  padding-left: 15px;
  padding-right: 42px;
}

.cm-input-number.is-controls-right .cm-input-number__decrease,
.cm-input-number.is-controls-right .cm-input-number__increase {
  --cm-input-number-controls-height: 15px;
  height: var(--cm-input-number-controls-height);
  line-height: var(--cm-input-number-controls-height);
}

.cm-input-number.is-controls-right .cm-input-number__decrease [class*=cm-icon],
.cm-input-number.is-controls-right .cm-input-number__increase [class*=cm-icon] {
  transform: scale(0.8);
}

.cm-input-number.is-controls-right .cm-input-number__increase {
  bottom: auto;
  left: auto;
  border-radius: 0 var(--cm-border-radius-base) 0 0;
  border-bottom: var(--cm-border);
}

.cm-input-number.is-controls-right .cm-input-number__decrease {
  right: 1px;
  top: auto;
  left: auto;
  border-right: none;
  border-left: var(--cm-border);
  border-radius: 0 0 var(--cm-border-radius-base) 0;
}

.cm-input-number.is-controls-right[class*=large] [class*=decrease],
.cm-input-number.is-controls-right[class*=large] [class*=increase] {
  --cm-input-number-controls-height: 19px;
}

.cm-input-number.is-controls-right[class*=small] [class*=decrease],
.cm-input-number.is-controls-right[class*=small] [class*=increase] {
  --cm-input-number-controls-height: 11px;
}

.cm-textarea {
  --cm-input-text-color: var(--cm-text-color-regular);
  --cm-input-border: var(--cm-border);
  --cm-input-hover-border: var(--cm-border-color-hover);
  --cm-input-focus-border: var(--cm-color-primary);
  --cm-input-transparent-border: 0 0 0 1px transparent inset;
  --cm-input-border-color: var(--cm-border-color);
  --cm-input-border-radius: var(--cm-border-radius-base);
  --cm-input-bg-color: var(--cm-fill-color-blank);
  --cm-input-icon-color: var(--cm-text-color-placeholder);
  --cm-input-placeholder-color: var(--cm-text-color-placeholder);
  --cm-input-hover-border-color: var(--cm-border-color-hover);
  --cm-input-clear-hover-color: var(--cm-text-color-secondary);
  --cm-input-focus-border-color: var(--cm-color-primary);
  --cm-input-width: 100%;
}

.cm-textarea {
  position: relative;
  display: inline-block;
  width: 100%;
  vertical-align: bottom;
  font-size: var(--cm-font-size-base);
}

.cm-textarea__inner {
  position: relative;
  display: block;
  resize: vertical;
  padding: 5px 11px;
  line-height: 1.5;
  box-sizing: border-box;
  width: 100%;
  font-size: inherit;
  font-family: inherit;
  color: var(--cm-input-text-color, var(--cm-text-color-regular));
  background-color: var(--cm-input-bg-color, var(--cm-fill-color-blank));
  background-image: none;
  -webkit-appearance: none;
  box-shadow: 0 0 0 1px var(--cm-input-border-color, var(--cm-border-color)) inset;
  border-radius: var(--cm-input-border-radius, var(--cm-border-radius-base));
  transition: var(--cm-transition-box-shadow);
  border: none;
}

.cm-textarea__inner::-moz-placeholder {
  color: var(--cm-input-placeholder-color, var(--cm-text-color-placeholder));
}

.cm-textarea__inner:-ms-input-placeholder {
  color: var(--cm-input-placeholder-color, var(--cm-text-color-placeholder));
}

.cm-textarea__inner::placeholder {
  color: var(--cm-input-placeholder-color, var(--cm-text-color-placeholder));
}

.cm-textarea__inner:hover {
  box-shadow: 0 0 0 1px var(--cm-input-hover-border-color) inset;
}

.cm-textarea__inner:focus {
  outline: 0;
  box-shadow: 0 0 0 1px var(--cm-input-focus-border-color) inset;
}

.cm-textarea .cm-input__count {
  color: var(--cm-color-info);
  background: var(--cm-fill-color-blank);
  position: absolute;
  font-size: 12px;
  line-height: 14px;
  bottom: 5px;
  right: 10px;
}

.cm-textarea.is-disabled .cm-textarea__inner {
  background-color: var(--cm-disabled-bg-color);
  border-color: var(--cm-disabled-border-color);
  color: var(--cm-disabled-text-color);
  cursor: not-allowed;
}

.cm-textarea.is-disabled .cm-textarea__inner::-moz-placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-textarea.is-disabled .cm-textarea__inner:-ms-input-placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-textarea.is-disabled .cm-textarea__inner::placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-textarea.is-exceed .cm-textarea__inner {
  box-shadow: 0 0 0 1px var(--cm-color-danger) inset;
}

.cm-textarea.is-exceed .cm-input__count {
  color: var(--cm-color-danger);
}

.cm-input {
  --cm-input-text-color: var(--cm-text-color-regular);
  --cm-input-border: var(--cm-border);
  --cm-input-hover-border: var(--cm-border-color-hover);
  --cm-input-focus-border: var(--cm-color-primary);
  --cm-input-transparent-border: 0 0 0 1px transparent inset;
  --cm-input-border-color: var(--cm-border-color);
  --cm-input-border-radius: var(--cm-border-radius-base);
  --cm-input-bg-color: var(--cm-fill-color-blank);
  --cm-input-icon-color: var(--cm-text-color-placeholder);
  --cm-input-placeholder-color: var(--cm-text-color-placeholder);
  --cm-input-hover-border-color: var(--cm-border-color-hover);
  --cm-input-clear-hover-color: var(--cm-text-color-secondary);
  --cm-input-focus-border-color: var(--cm-color-primary);
  --cm-input-width: 100%;
}

.cm-input {
  --cm-input-height: var(--cm-component-size);
  position: relative;
  font-size: var(--cm-font-size-base);
  display: inline-flex;
  width: var(--cm-input-width);
  line-height: var(--cm-input-height);
  box-sizing: border-box;
  vertical-align: middle;
}

.cm-input::-webkit-scrollbar {
  z-index: 11;
  width: 6px;
}

.cm-input::-webkit-scrollbar:horizontal {
  height: 6px;
}

.cm-input::-webkit-scrollbar-thumb {
  border-radius: 5px;
  width: 6px;
  background: var(--cm-text-color-disabled);
}

.cm-input::-webkit-scrollbar-corner {
  background: var(--cm-fill-color-blank);
}

.cm-input::-webkit-scrollbar-track {
  background: var(--cm-fill-color-blank);
}

.cm-input::-webkit-scrollbar-track-piece {
  background: var(--cm-fill-color-blank);
  width: 6px;
}

.cm-input .cm-input__clear,
.cm-input .cm-input__password {
  color: var(--cm-input-icon-color);
  font-size: 14px;
  cursor: pointer;
}

.cm-input .cm-input__clear:hover,
.cm-input .cm-input__password:hover {
  color: var(--cm-input-clear-hover-color);
}

.cm-input .cm-input__count {
  height: 100%;
  display: inline-flex;
  align-items: center;
  color: var(--cm-color-info);
  font-size: 12px;
}

.cm-input .cm-input__count .cm-input__count-inner {
  background: var(--cm-fill-color-blank);
  line-height: initial;
  display: inline-block;
  padding-left: 8px;
}

.cm-input__wrapper {
  display: inline-flex;
  flex-grow: 1;
  align-items: center;
  justify-content: center;
  padding: 1px 11px;
  background-color: var(--cm-input-bg-color, var(--cm-fill-color-blank));
  background-image: none;
  border-radius: var(--cm-input-border-radius, var(--cm-border-radius-base));
  transition: var(--cm-transition-box-shadow);
  transform: translate3d(0, 0, 0);
  box-shadow: 0 0 0 1px var(--cm-input-border-color, var(--cm-border-color)) inset;
}

.cm-input__wrapper:hover {
  box-shadow: 0 0 0 1px var(--cm-input-hover-border-color) inset;
}

.cm-input__wrapper.is-focus {
  box-shadow: 0 0 0 1px var(--cm-input-focus-border-color) inset;
}

.cm-input__inner {
  --cm-input-inner-height: calc(var(--cm-input-height, 32px) - 2px);
  width: 100%;
  flex-grow: 1;
  -webkit-appearance: none;
  color: var(--cm-input-text-color, var(--cm-text-color-regular));
  font-size: inherit;
  height: var(--cm-input-inner-height);
  line-height: var(--cm-input-inner-height);
  padding: 0;
  outline: 0;
  border: none;
  background: 0 0;
  box-sizing: border-box;
}

.cm-input__inner:focus {
  outline: 0;
}

.cm-input__inner::-moz-placeholder {
  color: var(--cm-input-placeholder-color, var(--cm-text-color-placeholder));
}

.cm-input__inner:-ms-input-placeholder {
  color: var(--cm-input-placeholder-color, var(--cm-text-color-placeholder));
}

.cm-input__inner::placeholder {
  color: var(--cm-input-placeholder-color, var(--cm-text-color-placeholder));
}

.cm-input__inner[type=password]::-ms-reveal {
  display: none;
}

.cm-input__prefix {
  display: inline-flex;
  white-space: nowrap;
  flex-shrink: 0;
  flex-wrap: nowrap;
  height: 100%;
  text-align: center;
  color: var(--cm-input-icon-color, var(--cm-text-color-placeholder));
  transition: all var(--cm-transition-duration);
  pointer-events: none;
}

.cm-input__prefix-inner {
  pointer-events: all;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cm-input__prefix-inner > :last-child {
  margin-right: 8px;
}

.cm-input__prefix-inner > :first-child,
.cm-input__prefix-inner > :first-child.cm-input__icon {
  margin-left: 0;
}

.cm-input__suffix {
  display: inline-flex;
  white-space: nowrap;
  flex-shrink: 0;
  flex-wrap: nowrap;
  height: 100%;
  text-align: center;
  color: var(--cm-input-icon-color, var(--cm-text-color-placeholder));
  transition: all var(--cm-transition-duration);
  pointer-events: none;
}

.cm-input__suffix-inner {
  pointer-events: all;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cm-input__suffix-inner > :first-child {
  margin-left: 8px;
}

.cm-input .cm-input__icon {
  height: inherit;
  line-height: inherit;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all var(--cm-transition-duration);
  margin-left: 8px;
}

.cm-input__validateIcon {
  pointer-events: none;
}

.cm-input.is-active .cm-input__wrapper {
  box-shadow: 0 0 0 1px var(--cm-input-focus-color) inset;
}

.cm-input.is-disabled {
  cursor: not-allowed;
}

.cm-input.is-disabled .cm-input__wrapper {
  background-color: var(--cm-disabled-bg-color);
  box-shadow: 0 0 0 1px var(--cm-disabled-border-color) inset;
}

.cm-input.is-disabled .cm-input__inner {
  color: var(--cm-disabled-text-color);
  -webkit-text-fill-color: var(--cm-disabled-text-color);
  cursor: not-allowed;
}

.cm-input.is-disabled .cm-input__inner::-moz-placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-input.is-disabled .cm-input__inner:-ms-input-placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-input.is-disabled .cm-input__inner::placeholder {
  color: var(--cm-text-color-placeholder);
}

.cm-input.is-disabled .cm-input__icon {
  cursor: not-allowed;
}

.cm-input.is-exceed .cm-input__wrapper {
  box-shadow: 0 0 0 1px var(--cm-color-danger) inset;
}

.cm-input.is-exceed .cm-input__suffix .cm-input__count {
  color: var(--cm-color-danger);
}

.cm-input--large {
  --cm-input-height: var(--cm-component-size-large);
  font-size: 14px;
}

.cm-input--large .cm-input__wrapper {
  padding: 1px 15px;
}

.cm-input--large .cm-input__inner {
  --cm-input-inner-height: calc(var(--cm-input-height, 40px) - 2px);
}

.cm-input--small {
  --cm-input-height: var(--cm-component-size-small);
  font-size: 12px;
}

.cm-input--small .cm-input__wrapper {
  padding: 1px 7px;
}

.cm-input--small .cm-input__inner {
  --cm-input-inner-height: calc(var(--cm-input-height, 24px) - 2px);
}

.cm-input-group {
  display: inline-flex;
  width: 100%;
  align-items: stretch;
}

.cm-input-group__append,
.cm-input-group__prepend {
  background-color: var(--cm-fill-color-light);
  color: var(--cm-color-info);
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 100%;
  border-radius: var(--cm-input-border-radius);
  padding: 0 20px;
  white-space: nowrap;
}

.cm-input-group__append:focus,
.cm-input-group__prepend:focus {
  outline: 0;
}

.cm-input-group__append .cm-button,
.cm-input-group__append .cm-select,
.cm-input-group__prepend .cm-button,
.cm-input-group__prepend .cm-select {
  display: inline-block;
  margin: 0 -20px;
}

.cm-input-group__append button.cm-button,
.cm-input-group__append button.cm-button:hover,
.cm-input-group__append div.cm-select .cm-input__wrapper,
.cm-input-group__append div.cm-select:hover .cm-input__wrapper,
.cm-input-group__prepend button.cm-button,
.cm-input-group__prepend button.cm-button:hover,
.cm-input-group__prepend div.cm-select .cm-input__wrapper,
.cm-input-group__prepend div.cm-select:hover .cm-input__wrapper {
  border-color: transparent;
  background-color: transparent;
  color: inherit;
}

.cm-input-group__append .cm-button,
.cm-input-group__append .cm-input,
.cm-input-group__prepend .cm-button,
.cm-input-group__prepend .cm-input {
  font-size: inherit;
}

.cm-input-group__prepend {
  border-right: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  box-shadow: 1px 0 0 0 var(--cm-input-border-color) inset, 0 1px 0 0 var(--cm-input-border-color) inset, 0 -1px 0 0 var(--cm-input-border-color) inset;
}

.cm-input-group__append {
  border-left: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  box-shadow: 0 1px 0 0 var(--cm-input-border-color) inset, 0 -1px 0 0 var(--cm-input-border-color) inset, -1px 0 0 0 var(--cm-input-border-color) inset;
}

.cm-input-group--prepend > .cm-input__wrapper {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.cm-input-group--prepend .cm-input-group__prepend .cm-select .cm-input .cm-input__inner {
  box-shadow: none !important;
}

.cm-input-group--prepend .cm-input-group__prepend .cm-select .cm-input .cm-input__wrapper {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  box-shadow: 1px 0 0 0 var(--cm-input-border-color) inset, 0 1px 0 0 var(--cm-input-border-color) inset, 0 -1px 0 0 var(--cm-input-border-color) inset;
}

.cm-input-group--prepend .cm-input-group__prepend .cm-select .cm-input.is-focus .cm-input__inner {
  box-shadow: none !important;
}

.cm-input-group--prepend .cm-input-group__prepend .cm-select .cm-input.is-focus .cm-input__wrapper {
  box-shadow: 1px 0 0 0 var(--cm-input-focus-border-color) inset, 1px 0 0 0 var(--cm-input-focus-border-color), 0 1px 0 0 var(--cm-input-focus-border-color) inset, 0 -1px 0 0 var(--cm-input-focus-border-color) inset !important;
  z-index: 2;
}

.cm-input-group--prepend .cm-input-group__prepend .cm-select .cm-input.is-focus .cm-input__wrapper:focus {
  outline: 0;
  z-index: 2;
  box-shadow: 1px 0 0 0 var(--cm-input-focus-border-color) inset, 1px 0 0 0 var(--cm-input-focus-border-color), 0 1px 0 0 var(--cm-input-focus-border-color) inset, 0 -1px 0 0 var(--cm-input-focus-border-color) inset !important;
}

.cm-input-group--prepend .cm-input-group__prepend .cm-select:hover .cm-input__inner {
  box-shadow: none !important;
}

.cm-input-group--prepend .cm-input-group__prepend .cm-select:hover .cm-input__wrapper {
  z-index: 1;
  box-shadow: 1px 0 0 0 var(--cm-input-hover-border-color) inset, 1px 0 0 0 var(--cm-input-hover-border-color), 0 1px 0 0 var(--cm-input-hover-border-color) inset, 0 -1px 0 0 var(--cm-input-hover-border-color) inset !important;
}

.cm-input-group--append > .cm-input__wrapper {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.cm-input-group--append .cm-input-group__append .cm-select .cm-input .cm-input__inner {
  box-shadow: none !important;
}

.cm-input-group--append .cm-input-group__append .cm-select .cm-input .cm-input__wrapper {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  box-shadow: 0 1px 0 0 var(--cm-input-border-color) inset, 0 -1px 0 0 var(--cm-input-border-color) inset, -1px 0 0 0 var(--cm-input-border-color) inset;
}

.cm-input-group--append .cm-input-group__append .cm-select .cm-input.is-focus .cm-input__inner {
  box-shadow: none !important;
}

.cm-input-group--append .cm-input-group__append .cm-select .cm-input.is-focus .cm-input__wrapper {
  z-index: 2;
  box-shadow: -1px 0 0 0 var(--cm-input-focus-border-color), -1px 0 0 0 var(--cm-input-focus-border-color) inset, 0 1px 0 0 var(--cm-input-focus-border-color) inset, 0 -1px 0 0 var(--cm-input-focus-border-color) inset !important;
}

.cm-input-group--append .cm-input-group__append .cm-select:hover .cm-input__inner {
  box-shadow: none !important;
}

.cm-input-group--append .cm-input-group__append .cm-select:hover .cm-input__wrapper {
  z-index: 1;
  box-shadow: -1px 0 0 0 var(--cm-input-hover-border-color), -1px 0 0 0 var(--cm-input-hover-border-color) inset, 0 1px 0 0 var(--cm-input-hover-border-color) inset, 0 -1px 0 0 var(--cm-input-hover-border-color) inset !important;
}

.cm-link {
  --cm-link-font-size: var(--cm-font-size-base);
  --cm-link-font-weight: var(--cm-font-weight-primary);
  --cm-link-text-color: var(--cm-text-color-regular);
  --cm-link-hover-text-color: var(--cm-color-primary);
  --cm-link-disabled-text-color: var(--cm-text-color-placeholder);
}

.cm-link {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  position: relative;
  text-decoration: none;
  outline: 0;
  cursor: pointer;
  padding: 0;
  font-size: var(--cm-link-font-size);
  font-weight: var(--cm-link-font-weight);
  color: var(--cm-link-text-color);
}

.cm-link:hover {
  color: var(--cm-link-hover-text-color);
}

.cm-link.is-underline:hover:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 0;
  bottom: 0;
  border-bottom: 1px solid var(--cm-link-hover-text-color);
}

.cm-link.is-disabled {
  color: var(--cm-link-disabled-text-color);
  cursor: not-allowed;
}

.cm-link [class*=cm-icon-] + span {
  margin-left: 5px;
}

.cm-link.cm-link--default:after {
  border-color: var(--cm-link-hover-text-color);
}

.cm-link__inner {
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.cm-link.cm-link--primary {
  --cm-link-text-color: var(--cm-color-primary);
  --cm-link-hover-text-color: var(--cm-color-primary-light-3);
  --cm-link-disabled-text-color: var(--cm-color-primary-light-5);
}

.cm-link.cm-link--primary:after {
  border-color: var(--cm-link-text-color);
}

.cm-link.cm-link--primary.is-underline:hover:after {
  border-color: var(--cm-link-text-color);
}

.cm-link.cm-link--success {
  --cm-link-text-color: var(--cm-color-success);
  --cm-link-hover-text-color: var(--cm-color-success-light-3);
  --cm-link-disabled-text-color: var(--cm-color-success-light-5);
}

.cm-link.cm-link--success:after {
  border-color: var(--cm-link-text-color);
}

.cm-link.cm-link--success.is-underline:hover:after {
  border-color: var(--cm-link-text-color);
}

.cm-link.cm-link--warning {
  --cm-link-text-color: var(--cm-color-warning);
  --cm-link-hover-text-color: var(--cm-color-warning-light-3);
  --cm-link-disabled-text-color: var(--cm-color-warning-light-5);
}

.cm-link.cm-link--warning:after {
  border-color: var(--cm-link-text-color);
}

.cm-link.cm-link--warning.is-underline:hover:after {
  border-color: var(--cm-link-text-color);
}

.cm-link.cm-link--danger {
  --cm-link-text-color: var(--cm-color-danger);
  --cm-link-hover-text-color: var(--cm-color-danger-light-3);
  --cm-link-disabled-text-color: var(--cm-color-danger-light-5);
}

.cm-link.cm-link--danger:after {
  border-color: var(--cm-link-text-color);
}

.cm-link.cm-link--danger.is-underline:hover:after {
  border-color: var(--cm-link-text-color);
}

.cm-link.cm-link--error {
  --cm-link-text-color: var(--cm-color-error);
  --cm-link-hover-text-color: var(--cm-color-error-light-3);
  --cm-link-disabled-text-color: var(--cm-color-error-light-5);
}

.cm-link.cm-link--error:after {
  border-color: var(--cm-link-text-color);
}

.cm-link.cm-link--error.is-underline:hover:after {
  border-color: var(--cm-link-text-color);
}

.cm-link.cm-link--info {
  --cm-link-text-color: var(--cm-color-info);
  --cm-link-hover-text-color: var(--cm-color-info-light-3);
  --cm-link-disabled-text-color: var(--cm-color-info-light-5);
}

.cm-link.cm-link--info:after {
  border-color: var(--cm-link-text-color);
}

.cm-link.cm-link--info.is-underline:hover:after {
  border-color: var(--cm-link-text-color);
}

:root {
  --cm-loading-spinner-size: 42px;
  --cm-loading-fullscreen-spinner-size: 50px;
}

.cm-loading-parent--relative {
  position: relative !important;
}

.cm-loading-parent--hidden {
  overflow: hidden !important;
}

.cm-loading-mask {
  position: absolute;
  z-index: 2000;
  background-color: var(--cm-mask-color);
  margin: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transition: opacity var(--cm-transition-duration);
}

.cm-loading-mask.is-fullscreen {
  position: fixed;
}

.cm-loading-mask.is-fullscreen .cm-loading-spinner {
  margin-top: calc((0px - var(--cm-loading-fullscreen-spinner-size)) / 2);
}

.cm-loading-mask.is-fullscreen .cm-loading-spinner .circular {
  height: var(--cm-loading-fullscreen-spinner-size);
  width: var(--cm-loading-fullscreen-spinner-size);
}

.cm-loading-spinner {
  top: 50%;
  margin-top: calc((0px - var(--cm-loading-spinner-size)) / 2);
  width: 100%;
  text-align: center;
  position: absolute;
}

.cm-loading-spinner .cm-loading-text {
  color: var(--cm-color-primary);
  margin: 3px 0;
  font-size: 14px;
}

.cm-loading-spinner .circular {
  display: inline;
  height: var(--cm-loading-spinner-size);
  width: var(--cm-loading-spinner-size);
  -webkit-animation: loading-rotate 2s linear infinite;
  animation: loading-rotate 2s linear infinite;
}

.cm-loading-spinner .path {
  -webkit-animation: loading-dash 1.5s ease-in-out infinite;
  animation: loading-dash 1.5s ease-in-out infinite;
  stroke-dasharray: 90, 150;
  stroke-dashoffset: 0;
  stroke-width: 2;
  stroke: var(--cm-color-primary);
  stroke-linecap: round;
}

.cm-loading-spinner i {
  color: var(--cm-color-primary);
}

.cm-loading-fade-enter-from,
.cm-loading-fade-leave-to {
  opacity: 0;
}

@-webkit-keyframes loading-rotate {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes loading-rotate {
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes loading-dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -40px;
  }
  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -120px;
  }
}
@keyframes loading-dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -40px;
  }
  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -120px;
  }
}
.cm-main {
  --cm-main-padding: 20px;
  display: block;
  flex: 1;
  flex-basis: auto;
  overflow: auto;
  box-sizing: border-box;
  padding: var(--cm-main-padding);
}

:root {
  --cm-menu-active-color: var(--cm-color-primary);
  --cm-menu-text-color: var(--cm-text-color-primary);
  --cm-menu-hover-text-color: var(--cm-color-primary);
  --cm-menu-bg-color: var(--cm-fill-color-blank);
  --cm-menu-hover-bg-color: var(--cm-color-primary-light-9);
  --cm-menu-item-height: 40px;
  --cm-menu-sub-item-height: calc(var(--cm-menu-item-height) - 6px);
  --cm-menu-horizontal-sub-item-height: 36px;
  --cm-menu-item-font-size: var(--cm-font-size-base);
  --cm-menu-item-hover-fill: var(--cm-color-primary-light-9);
  --cm-menu-border-color: var(--cm-border-color);
  --cm-menu-base-levcm-padding: 20px;
  --cm-menu-levcm-padding: 20px;
  --cm-menu-icon-width: 24px;
}

.cm-menu {
  border-right: solid 1px var(--cm-menu-border-color);
  list-style: none;
  position: relative;
  margin: 0;
  padding-left: 0;
  background-color: var(--cm-menu-bg-color);
  box-sizing: border-box;
}

.cm-menu--vertical:not(.cm-menu--collapse):not(.cm-menu--popup-container) .cm-menu-item,
.cm-menu--vertical:not(.cm-menu--collapse):not(.cm-menu--popup-container) .cm-menu-item-group__title,
.cm-menu--vertical:not(.cm-menu--collapse):not(.cm-menu--popup-container) .cm-sub-menu__title {
  white-space: nowrap;
  padding-left: calc(var(--cm-menu-base-levcm-padding) + var(--cm-menu-level) * var(--cm-menu-levcm-padding));
}

.cm-menu--horizontal {
  display: flex;
  flex-wrap: nowrap;
  border-bottom: solid 1px var(--cm-menu-border-color);
  border-right: none;
}

.cm-menu--horizontal > .cm-menu-item {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  margin: 0;
  border-bottom: 2px solid transparent;
  color: var(--cm-menu-text-color);
}

.cm-menu--horizontal > .cm-menu-item a,
.cm-menu--horizontal > .cm-menu-item a:hover {
  color: inherit;
}

.cm-menu--horizontal > .cm-menu-item:not(.is-disabled):focus,
.cm-menu--horizontal > .cm-menu-item:not(.is-disabled):hover {
  background-color: #fff;
}

.cm-menu--horizontal > .cm-sub-menu:focus,
.cm-menu--horizontal > .cm-sub-menu:hover {
  outline: 0;
}

.cm-menu--horizontal > .cm-sub-menu:hover .cm-sub-menu__title {
  color: var(--cm-menu-hover-text-color);
}

.cm-menu--horizontal > .cm-sub-menu.is-active .cm-sub-menu__title {
  border-bottom: 2px solid var(--cm-menu-active-color);
  color: var(--cm-menu-active-color);
}

.cm-menu--horizontal > .cm-sub-menu .cm-sub-menu__title {
  height: 100%;
  border-bottom: 2px solid transparent;
  color: var(--cm-menu-text-color);
}

.cm-menu--horizontal > .cm-sub-menu .cm-sub-menu__title:hover {
  background-color: var(--cm-bg-color-overlay);
}

.cm-menu--horizontal .cm-menu .cm-menu-item,
.cm-menu--horizontal .cm-menu .cm-sub-menu__title {
  background-color: var(--cm-menu-bg-color);
  display: flex;
  align-items: center;
  height: var(--cm-menu-horizontal-sub-item-height);
  line-height: var(--cm-menu-horizontal-sub-item-height);
  padding: 0 10px;
  color: var(--cm-menu-text-color);
}

.cm-menu--horizontal .cm-menu .cm-sub-menu__title {
  padding-right: 40px;
}

.cm-menu--horizontal .cm-menu .cm-menu-item.is-active,
.cm-menu--horizontal .cm-menu .cm-sub-menu.is-active > .cm-sub-menu__title {
  color: var(--cm-menu-active-color);
}

.cm-menu--horizontal .cm-menu-item:not(.is-disabled):focus,
.cm-menu--horizontal .cm-menu-item:not(.is-disabled):hover {
  outline: 0;
  color: var(--cm-menu-hover-text-color);
  background-color: var(--cm-menu-hover-bg-color);
}

.cm-menu--horizontal > .cm-menu-item.is-active {
  border-bottom: 2px solid var(--cm-menu-active-color);
  color: var(--cm-menu-active-color) !important;
}

.cm-menu--collapse {
  width: calc(var(--cm-menu-icon-width) + var(--cm-menu-base-levcm-padding) * 2);
}

.cm-menu--collapse > .cm-menu-item [class^=cm-icon],
.cm-menu--collapse > .cm-menu-item-group > ul > .cm-sub-menu > .cm-sub-menu__title [class^=cm-icon],
.cm-menu--collapse > .cm-sub-menu > .cm-sub-menu__title [class^=cm-icon] {
  margin: 0;
  vertical-align: middle;
  width: var(--cm-menu-icon-width);
  text-align: center;
}

.cm-menu--collapse > .cm-menu-item .cm-sub-menu__icon-arrow,
.cm-menu--collapse > .cm-menu-item-group > ul > .cm-sub-menu > .cm-sub-menu__title .cm-sub-menu__icon-arrow,
.cm-menu--collapse > .cm-sub-menu > .cm-sub-menu__title .cm-sub-menu__icon-arrow {
  display: none;
}

.cm-menu--collapse > .cm-menu-item-group > ul > .cm-sub-menu > .cm-sub-menu__title > span,
.cm-menu--collapse > .cm-menu-item > span,
.cm-menu--collapse > .cm-sub-menu > .cm-sub-menu__title > span {
  height: 0;
  width: 0;
  overflow: hidden;
  visibility: hidden;
  display: inline-block;
}

.cm-menu--collapse > .cm-menu-item.is-active i {
  color: inherit;
}

.cm-menu--collapse .cm-menu .cm-sub-menu {
  min-width: 200px;
}

.cm-menu--popup {
  z-index: 100;
  min-width: 200px;
  border: none;
  padding: 5px 0;
  border-radius: var(--cm-border-radius-small);
  box-shadow: var(--cm-box-shadow-light);
}

.cm-menu .cm-icon {
  flex-shrink: 0;
}

.cm-menu-item {
  display: flex;
  align-items: center;
  height: var(--cm-menu-item-height);
  line-height: var(--cm-menu-item-height);
  font-size: var(--cm-menu-item-font-size);
  color: var(--cm-menu-text-color);
  padding: 0 var(--cm-menu-base-levcm-padding);
  list-style: none;
  cursor: pointer;
  position: relative;
  transition: border-color var(--cm-transition-duration), background-color var(--cm-transition-duration), color var(--cm-transition-duration);
  box-sizing: border-box;
  white-space: nowrap;
}

.cm-menu-item * {
  vertical-align: bottom;
}

.cm-menu-item i {
  color: inherit;
}

.cm-menu-item:focus,
.cm-menu-item:hover {
  outline: 0;
}

.cm-menu-item:hover {
  background-color: var(--cm-menu-hover-bg-color);
}

.cm-menu-item.is-disabled {
  opacity: 0.25;
  cursor: not-allowed;
  background: 0 0 !important;
}

.cm-menu-item [class^=cm-icon] {
  margin-right: 5px;
  width: var(--cm-menu-icon-width);
  text-align: center;
  font-size: 18px;
  vertical-align: middle;
}

.cm-menu-item.is-active {
  color: var(--cm-menu-active-color);
}

.cm-menu-item.is-active i {
  color: inherit;
}

.cm-menu-item .cm-menu-tooltip__trigger {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  display: inline-flex;
  align-items: center;
  box-sizing: border-box;
  padding: 0 var(--cm-menu-base-levcm-padding);
}

.cm-sub-menu {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.cm-sub-menu__title {
  display: flex;
  align-items: center;
  height: var(--cm-menu-item-height);
  line-height: var(--cm-menu-item-height);
  font-size: var(--cm-menu-item-font-size);
  color: var(--cm-menu-text-color);
  padding: 0 var(--cm-menu-base-levcm-padding);
  list-style: none;
  cursor: pointer;
  position: relative;
  transition: border-color var(--cm-transition-duration), background-color var(--cm-transition-duration), color var(--cm-transition-duration);
  box-sizing: border-box;
  white-space: nowrap;
  padding-right: calc(var(--cm-menu-base-levcm-padding) + var(--cm-menu-icon-width));
}

.cm-sub-menu__title * {
  vertical-align: bottom;
}

.cm-sub-menu__title i {
  color: inherit;
}

.cm-sub-menu__title:focus,
.cm-sub-menu__title:hover {
  outline: 0;
}

.cm-sub-menu__title:hover {
  background-color: var(--cm-menu-hover-bg-color);
}

.cm-sub-menu__title.is-disabled {
  opacity: 0.25;
  cursor: not-allowed;
  background: 0 0 !important;
}

.cm-sub-menu__title:hover {
  background-color: var(--cm-menu-hover-bg-color);
}

.cm-sub-menu .cm-menu {
  border: none;
}

.cm-sub-menu .cm-menu-item {
  height: var(--cm-menu-sub-item-height);
  line-height: var(--cm-menu-sub-item-height);
}

.cm-sub-menu__hide-arrow .cm-sub-menu__icon-arrow {
  display: none !important;
}

.cm-sub-menu.is-active .cm-sub-menu__title {
  border-bottom-color: var(--cm-menu-active-color);
}

.cm-sub-menu.is-disabled .cm-menu-item,
.cm-sub-menu.is-disabled .cm-sub-menu__title {
  opacity: 0.25;
  cursor: not-allowed;
  background: 0 0 !important;
}

.cm-sub-menu .cm-icon {
  vertical-align: middle;
  margin-right: 5px;
  width: var(--cm-menu-icon-width);
  text-align: center;
  font-size: 18px;
}

.cm-sub-menu .cm-icon.cm-sub-menu__icon-more {
  margin-right: 0 !important;
}

.cm-sub-menu .cm-sub-menu__icon-arrow {
  position: absolute;
  top: 50%;
  right: var(--cm-menu-base-levcm-padding);
  margin-top: -6px;
  transition: transform var(--cm-transition-duration);
  font-size: 12px;
  margin-right: 0;
  width: inherit;
}

.cm-menu-item-group > ul {
  padding: 0;
}

.cm-menu-item-group__title {
  padding: 7px 0 7px var(--cm-menu-base-levcm-padding);
  line-height: normal;
  font-size: 12px;
  color: var(--cm-text-color-secondary);
}

.horizontal-collapse-transition .cm-sub-menu__title .cm-sub-menu__icon-arrow {
  transition: var(--cm-transition-duration-fast);
  opacity: 0;
}

.cm-message-box {
  --cm-messagebox-title-color: var(--cm-text-color-primary);
  --cm-messagebox-width: 420px;
  --cm-messagebox-border-radius: 4px;
  --cm-messagebox-font-size: var(--cm-font-size-large);
  --cm-messagebox-content-font-size: var(--cm-font-size-base);
  --cm-messagebox-content-color: var(--cm-text-color-regular);
  --cm-messagebox-error-font-size: 12px;
  --cm-messagebox-padding-primary: 15px;
}

.cm-message-box {
  display: inline-block;
  max-width: var(--cm-messagebox-width);
  width: 100%;
  padding-bottom: 10px;
  vertical-align: middle;
  background-color: var(--cm-bg-color);
  border-radius: var(--cm-messagebox-border-radius);
  border: 1px solid var(--cm-border-color-lighter);
  font-size: var(--cm-messagebox-font-size);
  box-shadow: var(--cm-box-shadow-light);
  text-align: left;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
}

.cm-message-box:focus {
  outline: 0 !important;
}

.cm-overlay.is-message-box .cm-overlay-message-box {
  text-align: center;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 16px;
  overflow: auto;
}

.cm-overlay.is-message-box .cm-overlay-message-box::after {
  content: "";
  display: inline-block;
  height: 100%;
  width: 0;
  vertical-align: middle;
}

.cm-message-box.is-draggable .cm-message-box__header {
  cursor: move;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cm-message-box__header {
  position: relative;
  padding: var(--cm-messagebox-padding-primary);
  padding-bottom: 10px;
}

.cm-message-box__title {
  padding-left: 0;
  margin-bottom: 0;
  font-size: var(--cm-messagebox-font-size);
  line-height: 1;
  color: var(--cm-messagebox-title-color);
}

.cm-message-box__headerbtn {
  position: absolute;
  top: var(--cm-messagebox-padding-primary);
  right: var(--cm-messagebox-padding-primary);
  padding: 0;
  border: none;
  outline: 0;
  background: 0 0;
  font-size: var(--cm-message-close-size, 16px);
  cursor: pointer;
}

.cm-message-box__headerbtn .cm-message-box__close {
  color: var(--cm-color-info);
  font-size: inherit;
}

.cm-message-box__headerbtn:focus .cm-message-box__close,
.cm-message-box__headerbtn:hover .cm-message-box__close {
  color: var(--cm-color-primary);
}

.cm-message-box__content {
  padding: 10px var(--cm-messagebox-padding-primary);
  color: var(--cm-messagebox-content-color);
  font-size: var(--cm-messagebox-content-font-size);
}

.cm-message-box__container {
  position: relative;
}

.cm-message-box__input {
  padding-top: 15px;
}

.cm-message-box__input div.invalid > input {
  border-color: var(--cm-color-error);
}

.cm-message-box__input div.invalid > input:focus {
  border-color: var(--cm-color-error);
}

.cm-message-box__status {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 24px !important;
}

.cm-message-box__status::before {
  padding-left: 1px;
}

.cm-message-box__status.cm-icon {
  position: absolute;
}

.cm-message-box__status + .cm-message-box__message {
  padding-left: 36px;
  padding-right: 12px;
  word-break: break-word;
}

.cm-message-box__status.cm-message-box-icon--success {
  --cm-messagebox-color: var(--cm-color-success);
  color: var(--cm-messagebox-color);
}

.cm-message-box__status.cm-message-box-icon--info {
  --cm-messagebox-color: var(--cm-color-info);
  color: var(--cm-messagebox-color);
}

.cm-message-box__status.cm-message-box-icon--warning {
  --cm-messagebox-color: var(--cm-color-warning);
  color: var(--cm-messagebox-color);
}

.cm-message-box__status.cm-message-box-icon--error {
  --cm-messagebox-color: var(--cm-color-error);
  color: var(--cm-messagebox-color);
}

.cm-message-box__message {
  margin: 0;
}

.cm-message-box__message p {
  margin: 0;
  line-height: 24px;
}

.cm-message-box__errormsg {
  color: var(--cm-color-error);
  font-size: var(--cm-messagebox-error-font-size);
  min-height: 18px;
  margin-top: 2px;
}

.cm-message-box__btns {
  padding: 5px 15px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
}

.cm-message-box__btns button:nth-child(2) {
  margin-left: 10px;
}

.cm-message-box__btns-reverse {
  flex-direction: row-reverse;
}

.cm-message-box--center .cm-message-box__title {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cm-message-box--center .cm-message-box__status {
  position: relative;
  top: auto;
  padding-right: 5px;
  text-align: center;
  transform: translateY(-1px);
}

.cm-message-box--center .cm-message-box__message {
  margin-left: 0;
}

.cm-message-box--center .cm-message-box__btns {
  justify-content: center;
}

.cm-message-box--center .cm-message-box__content {
  padding-left: calc(var(--cm-messagebox-padding-primary) + 12px);
  padding-right: calc(var(--cm-messagebox-padding-primary) + 12px);
  text-align: center;
}

.fade-in-linear-enter-active .cm-overlay-message-box {
  -webkit-animation: msgbox-fade-in var(--cm-transition-duration);
  animation: msgbox-fade-in var(--cm-transition-duration);
}

.fade-in-linear-leave-active .cm-overlay-message-box {
  animation: msgbox-fade-in var(--cm-transition-duration) reverse;
}

@-webkit-keyframes msgbox-fade-in {
  0% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes msgbox-fade-in {
  0% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes msgbox-fade-out {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
}
@keyframes msgbox-fade-out {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(0, -20px, 0);
    opacity: 0;
  }
}
.cm-message {
  --cm-message-bg-color: var(--cm-color-info-light-9);
  --cm-message-border-color: var(--cm-border-color-lighter);
  --cm-message-padding: 15px 19px;
  --cm-message-close-size: 16px;
  --cm-message-close-icon-color: var(--cm-text-color-placeholder);
  --cm-message-close-hover-color: var(--cm-text-color-secondary);
}

.cm-message {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: calc(100% - 32px);
  box-sizing: border-box;
  border-radius: var(--cm-border-radius-base);
  border-width: var(--cm-border-width);
  border-style: var(--cm-border-style);
  border-color: var(--cm-message-border-color);
  position: fixed;
  left: 50%;
  top: 20px;
  transform: translateX(-50%);
  background-color: var(--cm-message-bg-color);
  transition: opacity var(--cm-transition-duration), transform 0.4s, top 0.4s;
  padding: var(--cm-message-padding);
  display: flex;
  align-items: center;
}

.cm-message.is-center {
  justify-content: center;
}

.cm-message.is-closable .cm-message__content {
  padding-right: 31px;
}

.cm-message p {
  margin: 0;
}

.cm-message--success {
  --cm-message-bg-color: var(--cm-color-success-light-9);
  --cm-message-border-color: var(--cm-color-success-light-8);
  --cm-message-text-color: var(--cm-color-success);
}

.cm-message--success .cm-message__content {
  color: var(--cm-message-text-color);
  overflow-wrap: anywhere;
}

.cm-message .cm-message-icon--success {
  color: var(--cm-message-text-color);
}

.cm-message--info {
  --cm-message-bg-color: var(--cm-color-info-light-9);
  --cm-message-border-color: var(--cm-color-info-light-8);
  --cm-message-text-color: var(--cm-color-info);
}

.cm-message--info .cm-message__content {
  color: var(--cm-message-text-color);
  overflow-wrap: anywhere;
}

.cm-message .cm-message-icon--info {
  color: var(--cm-message-text-color);
}

.cm-message--warning {
  --cm-message-bg-color: var(--cm-color-warning-light-9);
  --cm-message-border-color: var(--cm-color-warning-light-8);
  --cm-message-text-color: var(--cm-color-warning);
}

.cm-message--warning .cm-message__content {
  color: var(--cm-message-text-color);
  overflow-wrap: anywhere;
}

.cm-message .cm-message-icon--warning {
  color: var(--cm-message-text-color);
}

.cm-message--error {
  --cm-message-bg-color: var(--cm-color-error-light-9);
  --cm-message-border-color: var(--cm-color-error-light-8);
  --cm-message-text-color: var(--cm-color-error);
}

.cm-message--error .cm-message__content {
  color: var(--cm-message-text-color);
  overflow-wrap: anywhere;
}

.cm-message .cm-message-icon--error {
  color: var(--cm-message-text-color);
}

.cm-message__icon {
  margin-right: 10px;
}

.cm-message .cm-message__badge {
  position: absolute;
  top: -8px;
  right: -8px;
}

.cm-message__content {
  padding: 0;
  font-size: 14px;
  line-height: 1;
}

.cm-message__content:focus {
  outline-width: 0;
}

.cm-message .cm-message__closeBtn {
  position: absolute;
  top: 50%;
  right: 19px;
  transform: translateY(-50%);
  cursor: pointer;
  color: var(--cm-message-close-icon-color);
  font-size: var(--cm-message-close-size);
}

.cm-message .cm-message__closeBtn:focus {
  outline-width: 0;
}

.cm-message .cm-message__closeBtn:hover {
  color: var(--cm-message-close-hover-color);
}

.cm-message-fade-enter-from,
.cm-message-fade-leave-to {
  opacity: 0;
  transform: translate(-50%, -100%);
}

.cm-notification {
  --cm-notification-width: 330px;
  --cm-notification-padding: 14px 26px 14px 13px;
  --cm-notification-radius: 8px;
  --cm-notification-shadow: var(--cm-box-shadow-light);
  --cm-notification-border-color: var(--cm-border-color-lighter);
  --cm-notification-icon-size: 24px;
  --cm-notification-close-font-size: var(--cm-message-close-size, 16px);
  --cm-notification-group-margin-left: 13px;
  --cm-notification-group-margin-right: 8px;
  --cm-notification-content-font-size: var(--cm-font-size-base);
  --cm-notification-content-color: var(--cm-text-color-regular);
  --cm-notification-title-font-size: 16px;
  --cm-notification-title-color: var(--cm-text-color-primary);
  --cm-notification-close-color: var(--cm-text-color-secondary);
  --cm-notification-close-hover-color: var(--cm-text-color-regular);
}

.cm-notification {
  display: flex;
  width: var(--cm-notification-width);
  padding: var(--cm-notification-padding);
  border-radius: var(--cm-notification-radius);
  box-sizing: border-box;
  border: 1px solid var(--cm-notification-border-color);
  position: fixed;
  background-color: var(--cm-bg-color-overlay);
  box-shadow: var(--cm-notification-shadow);
  transition: opacity var(--cm-transition-duration), transform var(--cm-transition-duration), left var(--cm-transition-duration), right var(--cm-transition-duration), top 0.4s, bottom var(--cm-transition-duration);
  overflow-wrap: anywhere;
  overflow: hidden;
  z-index: 9999;
}

.cm-notification.right {
  right: 16px;
}

.cm-notification.left {
  left: 16px;
}

.cm-notification__group {
  margin-left: var(--cm-notification-group-margin-left);
  margin-right: var(--cm-notification-group-margin-right);
}

.cm-notification__title {
  font-weight: 700;
  font-size: var(--cm-notification-title-font-size);
  line-height: var(--cm-notification-icon-size);
  color: var(--cm-notification-title-color);
  margin: 0;
}

.cm-notification__content {
  font-size: var(--cm-notification-content-font-size);
  line-height: 24px;
  margin: 6px 0 0;
  color: var(--cm-notification-content-color);
  text-align: justify;
}

.cm-notification__content p {
  margin: 0;
}

.cm-notification .cm-notification__icon {
  height: var(--cm-notification-icon-size);
  width: var(--cm-notification-icon-size);
  font-size: var(--cm-notification-icon-size);
}

.cm-notification .cm-notification__closeBtn {
  position: absolute;
  top: 18px;
  right: 15px;
  cursor: pointer;
  color: var(--cm-notification-close-color);
  font-size: var(--cm-notification-close-font-size);
}

.cm-notification .cm-notification__closeBtn:hover {
  color: var(--cm-notification-close-hover-color);
}

.cm-notification .cm-notification--success {
  --cm-notification-icon-color: var(--cm-color-success);
  color: var(--cm-notification-icon-color);
}

.cm-notification .cm-notification--info {
  --cm-notification-icon-color: var(--cm-color-info);
  color: var(--cm-notification-icon-color);
}

.cm-notification .cm-notification--warning {
  --cm-notification-icon-color: var(--cm-color-warning);
  color: var(--cm-notification-icon-color);
}

.cm-notification .cm-notification--error {
  --cm-notification-icon-color: var(--cm-color-error);
  color: var(--cm-notification-icon-color);
}

.cm-notification-fade-enter-from.right {
  right: 0;
  transform: translateX(100%);
}

.cm-notification-fade-enter-from.left {
  left: 0;
  transform: translateX(-100%);
}

.cm-notification-fade-leave-to {
  opacity: 0;
}

.cm-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2000;
  height: 100%;
  background-color: var(--cm-overlay-color-lighter);
  overflow: auto;
}

.cm-overlay .cm-overlay-root {
  height: 0;
}

.cm-page-header.is-contentful .cm-page-header__main {
  border-top: 1px solid var(--cm-border-color-light);
  margin-top: 16px;
}

.cm-page-header__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  line-height: 24px;
}

.cm-page-header__left {
  display: flex;
  align-items: center;
  margin-right: 40px;
  position: relative;
}

.cm-page-header__back {
  display: flex;
  align-items: center;
  cursor: pointer;
}

.cm-page-header__left .cm-divider--vertical {
  margin: 0 16px;
}

.cm-page-header__icon {
  font-size: 16px;
  margin-right: 10px;
  display: flex;
  align-items: center;
}

.cm-page-header__icon .cm-icon {
  font-size: inherit;
}

.cm-page-header__title {
  font-size: 14px;
  font-weight: 500;
}

.cm-page-header__content {
  font-size: 18px;
  color: var(--cm-text-color-primary);
}

.cm-page-header__breadcrumb {
  margin-bottom: 16px;
}

.cm-pagination {
  --cm-pagination-font-size: 14px;
  --cm-pagination-bg-color: var(--cm-fill-color-blank);
  --cm-pagination-text-color: var(--cm-text-color-primary);
  --cm-pagination-border-radius: 2px;
  --cm-pagination-button-color: var(--cm-text-color-primary);
  --cm-pagination-button-width: 32px;
  --cm-pagination-button-height: 32px;
  --cm-pagination-button-disabled-color: var(--cm-text-color-placeholder);
  --cm-pagination-button-disabled-bg-color: var(--cm-fill-color-blank);
  --cm-pagination-button-bg-color: var(--cm-fill-color);
  --cm-pagination-hover-color: var(--cm-color-primary);
  --cm-pagination-font-size-small: 12px;
  --cm-pagination-button-width-small: 24px;
  --cm-pagination-button-height-small: 24px;
  --cm-pagination-item-gap: 16px;
  white-space: nowrap;
  color: var(--cm-pagination-text-color);
  font-size: var(--cm-pagination-font-size);
  font-weight: 400;
  display: flex;
  align-items: center;
}

.cm-pagination .cm-input__inner {
  text-align: center;
  -moz-appearance: textfield;
}

.cm-pagination .cm-select .cm-input {
  width: 128px;
}

.cm-pagination button {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: var(--cm-pagination-font-size);
  min-width: var(--cm-pagination-button-width);
  height: var(--cm-pagination-button-height);
  line-height: var(--cm-pagination-button-height);
  color: var(--cm-pagination-button-color);
  background: var(--cm-pagination-bg-color);
  padding: 0 4px;
  border: none;
  border-radius: var(--cm-pagination-border-radius);
  cursor: pointer;
  text-align: center;
  box-sizing: border-box;
}

.cm-pagination button * {
  pointer-events: none;
}

.cm-pagination button:focus {
  outline: 0;
}

.cm-pagination button:hover {
  color: var(--cm-pagination-hover-color);
}

.cm-pagination button.is-active {
  color: var(--cm-pagination-hover-color);
  cursor: default;
  font-weight: 700;
}

.cm-pagination button.is-active.is-disabled {
  font-weight: 700;
  color: var(--cm-text-color-secondary);
}

.cm-pagination button.is-disabled,
.cm-pagination button:disabled {
  color: var(--cm-pagination-button-disabled-color);
  background-color: var(--cm-pagination-button-disabled-bg-color);
  cursor: not-allowed;
}

.cm-pagination button:focus-visible {
  outline: 1px solid var(--cm-pagination-hover-color);
  outline-offset: -1px;
}

.cm-pagination .btn-next .cm-icon,
.cm-pagination .btn-prev .cm-icon {
  display: block;
  font-size: 12px;
  font-weight: 700;
  width: inherit;
}

.cm-pagination > .is-first {
  margin-left: 0 !important;
}

.cm-pagination > .is-last {
  margin-right: 0 !important;
}

.cm-pagination .btn-prev {
  margin-left: var(--cm-pagination-item-gap);
}

.cm-pagination__sizes {
  margin-left: var(--cm-pagination-item-gap);
  font-weight: 400;
  color: var(--cm-text-color-regular);
}

.cm-pagination__total {
  margin-left: var(--cm-pagination-item-gap);
  font-weight: 400;
  color: var(--cm-text-color-regular);
}

.cm-pagination__total[disabled=true] {
  color: var(--cm-text-color-placeholder);
}

.cm-pagination__jump {
  display: flex;
  align-items: center;
  margin-left: var(--cm-pagination-item-gap);
  font-weight: 400;
  color: var(--cm-text-color-regular);
}

.cm-pagination__jump[disabled=true] {
  color: var(--cm-text-color-placeholder);
}

.cm-pagination__goto {
  margin-right: 8px;
}

.cm-pagination__editor {
  text-align: center;
  box-sizing: border-box;
}

.cm-pagination__editor.cm-input {
  width: 56px;
}

.cm-pagination__editor .cm-input__inner::-webkit-inner-spin-button,
.cm-pagination__editor .cm-input__inner::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.cm-pagination__classifier {
  margin-left: 8px;
}

.cm-pagination__rightwrapper {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.cm-pagination.is-background .btn-next,
.cm-pagination.is-background .btn-prev,
.cm-pagination.is-background .cm-pager li {
  margin: 0 4px;
  background-color: var(--cm-pagination-button-bg-color);
}

.cm-pagination.is-background .btn-next.is-active,
.cm-pagination.is-background .btn-prev.is-active,
.cm-pagination.is-background .cm-pager li.is-active {
  background-color: var(--cm-color-primary);
  color: var(--cm-color-white);
}

.cm-pagination.is-background .btn-next.is-disabled,
.cm-pagination.is-background .btn-next:disabled,
.cm-pagination.is-background .btn-prev.is-disabled,
.cm-pagination.is-background .btn-prev:disabled,
.cm-pagination.is-background .cm-pager li.is-disabled,
.cm-pagination.is-background .cm-pager li:disabled {
  color: var(--cm-text-color-placeholder);
  background-color: var(--cm-disabled-bg-color);
}

.cm-pagination.is-background .btn-next.is-disabled.is-active,
.cm-pagination.is-background .btn-next:disabled.is-active,
.cm-pagination.is-background .btn-prev.is-disabled.is-active,
.cm-pagination.is-background .btn-prev:disabled.is-active,
.cm-pagination.is-background .cm-pager li.is-disabled.is-active,
.cm-pagination.is-background .cm-pager li:disabled.is-active {
  color: var(--cm-text-color-secondary);
  background-color: var(--cm-fill-color-dark);
}

.cm-pagination.is-background .btn-prev {
  margin-left: var(--cm-pagination-item-gap);
}

.cm-pagination--small .btn-next,
.cm-pagination--small .btn-prev,
.cm-pagination--small .cm-pager li {
  height: var(--cm-pagination-button-height-small);
  line-height: var(--cm-pagination-button-height-small);
  font-size: var(--cm-pagination-font-size-small);
  min-width: var(--cm-pagination-button-width-small);
}

.cm-pagination--small button,
.cm-pagination--small span:not([class*=suffix]) {
  font-size: var(--cm-pagination-font-size-small);
}

.cm-pagination--small .cm-select .cm-input {
  width: 100px;
}

.cm-pager {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  list-style: none;
  font-size: 0;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
}

.cm-pager li {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: var(--cm-pagination-font-size);
  min-width: var(--cm-pagination-button-width);
  height: var(--cm-pagination-button-height);
  line-height: var(--cm-pagination-button-height);
  color: var(--cm-pagination-button-color);
  background: var(--cm-pagination-bg-color);
  padding: 0 4px;
  border: none;
  border-radius: var(--cm-pagination-border-radius);
  cursor: pointer;
  text-align: center;
  box-sizing: border-box;
}

.cm-pager li * {
  pointer-events: none;
}

.cm-pager li:focus {
  outline: 0;
}

.cm-pager li:hover {
  color: var(--cm-pagination-hover-color);
}

.cm-pager li.is-active {
  color: var(--cm-pagination-hover-color);
  cursor: default;
  font-weight: 700;
}

.cm-pager li.is-active.is-disabled {
  font-weight: 700;
  color: var(--cm-text-color-secondary);
}

.cm-pager li.is-disabled,
.cm-pager li:disabled {
  color: var(--cm-pagination-button-disabled-color);
  background-color: var(--cm-pagination-button-disabled-bg-color);
  cursor: not-allowed;
}

.cm-pager li:focus-visible {
  outline: 1px solid var(--cm-pagination-hover-color);
  outline-offset: -1px;
}

.cm-popconfirm__main {
  display: flex;
  align-items: center;
}

.cm-popconfirm__icon {
  margin-right: 5px;
}

.cm-popconfirm__action {
  text-align: right;
  margin-top: 8px;
}

.cm-popover {
  --cm-popover-bg-color: var(--cm-bg-color-overlay);
  --cm-popover-font-size: var(--cm-font-size-base);
  --cm-popover-border-color: var(--cm-border-color-lighter);
  --cm-popover-padding: 12px;
  --cm-popover-padding-large: 18px 20px;
  --cm-popover-title-font-size: 16px;
  --cm-popover-title-text-color: var(--cm-text-color-primary);
  --cm-popover-border-radius: 4px;
}

.cm-popover.cm-popper {
  background: var(--cm-popover-bg-color);
  min-width: 150px;
  border-radius: var(--cm-popover-border-radius);
  border: 1px solid var(--cm-popover-border-color);
  padding: var(--cm-popover-padding);
  z-index: var(--cm-index-popper);
  color: var(--cm-text-color-regular);
  line-height: 1.4;
  text-align: justify;
  font-size: var(--cm-popover-font-size);
  box-shadow: var(--cm-box-shadow-light);
  word-break: break-all;
  box-sizing: border-box;
}

.cm-popover.cm-popper--plain {
  padding: var(--cm-popover-padding-large);
}

.cm-popover__title {
  color: var(--cm-popover-title-text-color);
  font-size: var(--cm-popover-title-font-size);
  line-height: 1;
  margin-bottom: 12px;
}

.cm-popover__reference:focus:hover,
.cm-popover__reference:focus:not(.focusing) {
  outline-width: 0;
}

.cm-popover.cm-popper.is-dark {
  --cm-popover-bg-color: var(--cm-text-color-primary);
  --cm-popover-border-color: var(--cm-text-color-primary);
  --cm-popover-title-text-color: var(--cm-bg-color);
  color: var(--cm-bg-color);
}

.cm-popover.cm-popper:focus,
.cm-popover.cm-popper:focus:active {
  outline-width: 0;
}

.cm-progress {
  position: relative;
  line-height: 1;
  display: flex;
  align-items: center;
}

.cm-progress__text {
  font-size: 14px;
  color: var(--cm-text-color-regular);
  margin-left: 5px;
  min-width: 50px;
  line-height: 1;
}

.cm-progress__text i {
  vertical-align: middle;
  display: block;
}

.cm-progress--circle,
.cm-progress--dashboard {
  display: inline-block;
}

.cm-progress--circle .cm-progress__text,
.cm-progress--dashboard .cm-progress__text {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
  margin: 0;
  transform: translate(0, -50%);
}

.cm-progress--circle .cm-progress__text i,
.cm-progress--dashboard .cm-progress__text i {
  vertical-align: middle;
  display: inline-block;
}

.cm-progress--without-text .cm-progress__text {
  display: none;
}

.cm-progress--without-text .cm-progress-bar {
  padding-right: 0;
  margin-right: 0;
  display: block;
}

.cm-progress--text-inside .cm-progress-bar {
  padding-right: 0;
  margin-right: 0;
}

.cm-progress.is-success .cm-progress-bar__inner {
  background-color: var(--cm-color-success);
}

.cm-progress.is-success .cm-progress__text {
  color: var(--cm-color-success);
}

.cm-progress.is-warning .cm-progress-bar__inner {
  background-color: var(--cm-color-warning);
}

.cm-progress.is-warning .cm-progress__text {
  color: var(--cm-color-warning);
}

.cm-progress.is-exception .cm-progress-bar__inner {
  background-color: var(--cm-color-danger);
}

.cm-progress.is-exception .cm-progress__text {
  color: var(--cm-color-danger);
}

.cm-progress-bar {
  flex-grow: 1;
  box-sizing: border-box;
}

.cm-progress-bar__outer {
  height: 6px;
  border-radius: 100px;
  background-color: var(--cm-border-color-lighter);
  overflow: hidden;
  position: relative;
  vertical-align: middle;
}

.cm-progress-bar__inner {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  background-color: var(--cm-color-primary);
  text-align: right;
  border-radius: 100px;
  line-height: 1;
  white-space: nowrap;
  transition: width 0.6s ease;
}

.cm-progress-bar__inner::after {
  display: inline-block;
  content: "";
  height: 100%;
  vertical-align: middle;
}

.cm-progress-bar__inner--indeterminate {
  transform: translateZ(0);
  -webkit-animation: indeterminate 3s infinite;
  animation: indeterminate 3s infinite;
}

.cm-progress-bar__inner--striped {
  background-image: linear-gradient(45deg, rgba(0, 0, 0, 0.1) 25%, transparent 25%, transparent 50%, rgba(0, 0, 0, 0.1) 50%, rgba(0, 0, 0, 0.1) 75%, transparent 75%, transparent);
  background-size: 1.25em 1.25em;
}

.cm-progress-bar__inner--striped.cm-progress-bar__inner--striped-flow {
  -webkit-animation: striped-flow 3s linear infinite;
  animation: striped-flow 3s linear infinite;
}

.cm-progress-bar__innerText {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  font-size: 12px;
  margin: 0 5px;
}

@-webkit-keyframes progress {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 32px 0;
  }
}
@keyframes progress {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 32px 0;
  }
}
@-webkit-keyframes indeterminate {
  0% {
    left: -100%;
  }
  100% {
    left: 100%;
  }
}
@keyframes indeterminate {
  0% {
    left: -100%;
  }
  100% {
    left: 100%;
  }
}
@-webkit-keyframes striped-flow {
  0% {
    background-position: -100%;
  }
  100% {
    background-position: 100%;
  }
}
@keyframes striped-flow {
  0% {
    background-position: -100%;
  }
  100% {
    background-position: 100%;
  }
}
.cm-radio-button {
  --cm-radio-button-checked-bg-color: var(--cm-color-primary);
  --cm-radio-button-checked-text-color: var(--cm-color-white);
  --cm-radio-button-checked-border-color: var(--cm-color-primary);
  --cm-radio-button-disabled-checked-fill: var(--cm-border-color-extra-light);
}

.cm-radio-button {
  position: relative;
  display: inline-block;
  outline: 0;
}

.cm-radio-button__inner {
  display: inline-block;
  line-height: 1;
  white-space: nowrap;
  vertical-align: middle;
  background: var(--cm-button-bg-color, var(--cm-fill-color-blank));
  border: var(--cm-border);
  font-weight: var(--cm-button-font-weight, var(--cm-font-weight-primary));
  border-left: 0;
  color: var(--cm-button-text-color, var(--cm-text-color-regular));
  -webkit-appearance: none;
  text-align: center;
  box-sizing: border-box;
  outline: 0;
  margin: 0;
  position: relative;
  cursor: pointer;
  transition: var(--cm-transition-all);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  padding: 8px 15px;
  font-size: var(--cm-font-size-base);
  border-radius: 0;
}

.cm-radio-button__inner.is-round {
  padding: 8px 15px;
}

.cm-radio-button__inner:hover {
  color: var(--cm-color-primary);
}

.cm-radio-button__inner [class*=cm-icon-] {
  line-height: 0.9;
}

.cm-radio-button__inner [class*=cm-icon-] + span {
  margin-left: 5px;
}

.cm-radio-button:first-child .cm-radio-button__inner {
  border-left: var(--cm-border);
  border-radius: var(--cm-border-radius-base) 0 0 var(--cm-border-radius-base);
  box-shadow: none !important;
}

.cm-radio-button__original-radio {
  opacity: 0;
  outline: 0;
  position: absolute;
  z-index: -1;
}

.cm-radio-button__original-radio:checked + .cm-radio-button__inner {
  color: var(--cm-radio-button-checked-text-color, var(--cm-color-white));
  background-color: var(--cm-radio-button-checked-bg-color, var(--cm-color-primary));
  border-color: var(--cm-radio-button-checked-border-color, var(--cm-color-primary));
  box-shadow: -1px 0 0 0 var(--cm-radio-button-checked-border-color, var(--cm-color-primary));
}

.cm-radio-button__original-radio:focus-visible + .cm-radio-button__inner {
  border-left: var(--cm-border);
  border-left-color: var(--cm-radio-button-checked-border-color, var(--cm-color-primary));
  outline: 2px solid var(--cm-radio-button-checked-border-color);
  outline-offset: 1px;
  z-index: 2;
  border-radius: var(--cm-border-radius-base);
  box-shadow: none;
}

.cm-radio-button__original-radio:disabled + .cm-radio-button__inner {
  color: var(--cm-disabled-text-color);
  cursor: not-allowed;
  background-image: none;
  background-color: var(--cm-button-disabled-bg-color, var(--cm-fill-color-blank));
  border-color: var(--cm-button-disabled-border-color, var(--cm-border-color-light));
  box-shadow: none;
}

.cm-radio-button__original-radio:disabled:checked + .cm-radio-button__inner {
  background-color: var(--cm-radio-button-disabled-checked-fill);
}

.cm-radio-button:last-child .cm-radio-button__inner {
  border-radius: 0 var(--cm-border-radius-base) var(--cm-border-radius-base) 0;
}

.cm-radio-button:first-child:last-child .cm-radio-button__inner {
  border-radius: var(--cm-border-radius-base);
}

.cm-radio-button--large .cm-radio-button__inner {
  padding: 12px 19px;
  font-size: var(--cm-font-size-base);
  border-radius: 0;
}

.cm-radio-button--large .cm-radio-button__inner.is-round {
  padding: 12px 19px;
}

.cm-radio-button--small .cm-radio-button__inner {
  padding: 5px 11px;
  font-size: 12px;
  border-radius: 0;
}

.cm-radio-button--small .cm-radio-button__inner.is-round {
  padding: 5px 11px;
}

.cm-radio-group {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  font-size: 0;
}

.cm-radio {
  --cm-radio-font-size: var(--cm-font-size-base);
  --cm-radio-text-color: var(--cm-text-color-regular);
  --cm-radio-font-weight: var(--cm-font-weight-primary);
  --cm-radio-input-height: 14px;
  --cm-radio-input-width: 14px;
  --cm-radio-input-border-radius: var(--cm-border-radius-circle);
  --cm-radio-input-bg-color: var(--cm-fill-color-blank);
  --cm-radio-input-border: var(--cm-border);
  --cm-radio-input-border-color: var(--cm-border-color);
  --cm-radio-input-border-color-hover: var(--cm-color-primary);
}

.cm-radio {
  color: var(--cm-radio-text-color);
  font-weight: var(--cm-radio-font-weight);
  position: relative;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  outline: 0;
  font-size: var(--cm-font-size-base);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin-right: 32px;
  height: 32px;
}

.cm-radio.cm-radio--large {
  height: 40px;
}

.cm-radio.cm-radio--small {
  height: 24px;
}

.cm-radio.is-bordered {
  padding: 0 15px 0 9px;
  border-radius: var(--cm-border-radius-base);
  border: var(--cm-border);
  box-sizing: border-box;
}

.cm-radio.is-bordered.is-checked {
  border-color: var(--cm-color-primary);
}

.cm-radio.is-bordered.is-disabled {
  cursor: not-allowed;
  border-color: var(--cm-border-color-lighter);
}

.cm-radio.is-bordered.cm-radio--large {
  padding: 0 19px 0 11px;
  border-radius: var(--cm-border-radius-base);
}

.cm-radio.is-bordered.cm-radio--large .cm-radio__label {
  font-size: var(--cm-font-size-base);
}

.cm-radio.is-bordered.cm-radio--large .cm-radio__inner {
  height: 14px;
  width: 14px;
}

.cm-radio.is-bordered.cm-radio--small {
  padding: 0 11px 0 7px;
  border-radius: var(--cm-border-radius-base);
}

.cm-radio.is-bordered.cm-radio--small .cm-radio__label {
  font-size: 12px;
}

.cm-radio.is-bordered.cm-radio--small .cm-radio__inner {
  height: 12px;
  width: 12px;
}

.cm-radio:last-child {
  margin-right: 0;
}

.cm-radio__input {
  white-space: nowrap;
  cursor: pointer;
  outline: 0;
  display: inline-flex;
  position: relative;
  vertical-align: middle;
}

.cm-radio__input.is-disabled .cm-radio__inner {
  background-color: var(--cm-disabled-bg-color);
  border-color: var(--cm-disabled-border-color);
  cursor: not-allowed;
}

.cm-radio__input.is-disabled .cm-radio__inner::after {
  cursor: not-allowed;
  background-color: var(--cm-disabled-bg-color);
}

.cm-radio__input.is-disabled .cm-radio__inner + .cm-radio__label {
  cursor: not-allowed;
}

.cm-radio__input.is-disabled.is-checked .cm-radio__inner {
  background-color: var(--cm-disabled-bg-color);
  border-color: var(--cm-disabled-border-color);
}

.cm-radio__input.is-disabled.is-checked .cm-radio__inner::after {
  background-color: var(--cm-text-color-placeholder);
}

.cm-radio__input.is-disabled + span.cm-radio__label {
  color: var(--cm-text-color-placeholder);
  cursor: not-allowed;
}

.cm-radio__input.is-checked .cm-radio__inner {
  border-color: var(--cm-color-primary);
  background: var(--cm-color-primary);
}

.cm-radio__input.is-checked .cm-radio__inner::after {
  transform: translate(-50%, -50%) scale(1);
}

.cm-radio__input.is-checked + .cm-radio__label {
  color: var(--cm-color-primary);
}

.cm-radio__input.is-focus .cm-radio__inner {
  border-color: var(--cm-radio-input-border-color-hover);
}

.cm-radio__inner {
  border: var(--cm-radio-input-border);
  border-radius: var(--cm-radio-input-border-radius);
  width: var(--cm-radio-input-width);
  height: var(--cm-radio-input-height);
  background-color: var(--cm-radio-input-bg-color);
  position: relative;
  cursor: pointer;
  display: inline-block;
  box-sizing: border-box;
}

.cm-radio__inner:hover {
  border-color: var(--cm-radio-input-border-color-hover);
}

.cm-radio__inner::after {
  width: 4px;
  height: 4px;
  border-radius: var(--cm-radio-input-border-radius);
  background-color: var(--cm-color-white);
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) scale(0);
  transition: transform 0.15s ease-in;
}

.cm-radio__original {
  opacity: 0;
  outline: 0;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}

.cm-radio__original:focus-visible + .cm-radio__inner {
  outline: 2px solid var(--cm-radio-input-border-color-hover);
  outline-offset: 1px;
  border-radius: var(--cm-radio-input-border-radius);
}

.cm-radio:focus:not(:focus-visible):not(.is-focus):not(:active):not(.is-disabled) .cm-radio__inner {
  box-shadow: 0 0 2px 2px var(--cm-radio-input-border-color-hover);
}

.cm-radio__label {
  font-size: var(--cm-radio-font-size);
  padding-left: 8px;
}

.cm-radio.cm-radio--large .cm-radio__label {
  font-size: 14px;
}

.cm-radio.cm-radio--large .cm-radio__inner {
  width: 14px;
  height: 14px;
}

.cm-radio.cm-radio--small .cm-radio__label {
  font-size: 12px;
}

.cm-radio.cm-radio--small .cm-radio__inner {
  width: 12px;
  height: 12px;
}

.cm-rate {
  --cm-rate-height: 20px;
  --cm-rate-font-size: var(--cm-font-size-base);
  --cm-rate-icon-size: 18px;
  --cm-rate-icon-margin: 6px;
  --cm-rate-void-color: var(--cm-border-color-darker);
  --cm-rate-fill-color: #f7ba2a;
  --cm-rate-disabled-void-color: var(--cm-fill-color);
  --cm-rate-text-color: var(--cm-text-color-primary);
}

.cm-rate {
  display: inline-flex;
  align-items: center;
  height: 32px;
}

.cm-rate:active,
.cm-rate:focus {
  outline: 0;
}

.cm-rate__item {
  cursor: pointer;
  display: inline-block;
  position: relative;
  font-size: 0;
  vertical-align: middle;
  color: var(--cm-rate-void-color);
  line-height: normal;
}

.cm-rate .cm-rate__icon {
  position: relative;
  display: inline-block;
  font-size: var(--cm-rate-icon-size);
  margin-right: var(--cm-rate-icon-margin);
  transition: var(--cm-transition-duration);
}

.cm-rate .cm-rate__icon.hover {
  transform: scale(1.15);
}

.cm-rate .cm-rate__icon .path2 {
  position: absolute;
  left: 0;
  top: 0;
}

.cm-rate .cm-rate__icon.is-active {
  color: var(--cm-rate-fill-color);
}

.cm-rate__decimal {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  overflow: hidden;
  color: var(--cm-rate-fill-color);
}

.cm-rate__text {
  font-size: var(--cm-rate-font-size);
  vertical-align: middle;
  color: var(--cm-rate-text-color);
}

.cm-rate--large {
  height: 40px;
}

.cm-rate--small {
  height: 24px;
}

.cm-rate--small .cm-rate__icon {
  font-size: 14px;
}

.cm-rate.is-disabled .cm-rate__item {
  cursor: auto;
  color: var(--cm-rate-disabled-void-color);
}

.cm-result {
  --cm-result-padding: 40px 30px;
  --cm-result-icon-font-size: 64px;
  --cm-result-title-font-size: 20px;
  --cm-result-title-margin-top: 20px;
  --cm-result-subtitle-margin-top: 10px;
  --cm-result-extra-margin-top: 30px;
}

.cm-result {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  box-sizing: border-box;
  padding: var(--cm-result-padding);
}

.cm-result__icon svg {
  width: var(--cm-result-icon-font-size);
  height: var(--cm-result-icon-font-size);
}

.cm-result__title {
  margin-top: var(--cm-result-title-margin-top);
}

.cm-result__title p {
  margin: 0;
  font-size: var(--cm-result-title-font-size);
  color: var(--cm-text-color-primary);
  line-height: 1.3;
}

.cm-result__subtitle {
  margin-top: var(--cm-result-subtitle-margin-top);
}

.cm-result__subtitle p {
  margin: 0;
  font-size: var(--cm-font-size-base);
  color: var(--cm-text-color-regular);
  line-height: 1.3;
}

.cm-result__extra {
  margin-top: var(--cm-result-extra-margin-top);
}

.cm-result .icon-primary {
  --cm-result-color: var(--cm-color-primary);
  color: var(--cm-result-color);
}

.cm-result .icon-success {
  --cm-result-color: var(--cm-color-success);
  color: var(--cm-result-color);
}

.cm-result .icon-warning {
  --cm-result-color: var(--cm-color-warning);
  color: var(--cm-result-color);
}

.cm-result .icon-danger {
  --cm-result-color: var(--cm-color-danger);
  color: var(--cm-result-color);
}

.cm-result .icon-error {
  --cm-result-color: var(--cm-color-error);
  color: var(--cm-result-color);
}

.cm-result .icon-info {
  --cm-result-color: var(--cm-color-info);
  color: var(--cm-result-color);
}

.cm-row {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  box-sizing: border-box;
}

.cm-row.is-justify-center {
  justify-content: center;
}

.cm-row.is-justify-end {
  justify-content: flex-end;
}

.cm-row.is-justify-space-between {
  justify-content: space-between;
}

.cm-row.is-justify-space-around {
  justify-content: space-around;
}

.cm-row.is-justify-space-evenly {
  justify-content: space-evenly;
}

.cm-row.is-align-middle {
  align-items: center;
}

.cm-row.is-align-bottom {
  align-items: flex-end;
}

.cm-scrollbar {
  --cm-scrollbar-opacity: 0.3;
  --cm-scrollbar-bg-color: var(--cm-text-color-secondary);
  --cm-scrollbar-hover-opacity: 0.5;
  --cm-scrollbar-hover-bg-color: var(--cm-text-color-secondary);
}

.cm-scrollbar {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.cm-scrollbar__wrap {
  overflow: auto;
  height: 100%;
}

.cm-scrollbar__wrap--hidden-default {
  scrollbar-width: none;
}

.cm-scrollbar__wrap--hidden-default::-webkit-scrollbar {
  display: none;
}

.cm-scrollbar__thumb {
  position: relative;
  display: block;
  width: 0;
  height: 0;
  cursor: pointer;
  border-radius: inherit;
  background-color: var(--cm-scrollbar-bg-color, var(--cm-text-color-secondary));
  transition: var(--cm-transition-duration) background-color;
  opacity: var(--cm-scrollbar-opacity, 0.3);
}

.cm-scrollbar__thumb:hover {
  background-color: var(--cm-scrollbar-hover-bg-color, var(--cm-text-color-secondary));
  opacity: var(--cm-scrollbar-hover-opacity, 0.5);
}

.cm-scrollbar__bar {
  position: absolute;
  right: 2px;
  bottom: 2px;
  z-index: 1;
  border-radius: 4px;
}

.cm-scrollbar__bar.is-vertical {
  width: 6px;
  top: 2px;
}

.cm-scrollbar__bar.is-vertical > div {
  width: 100%;
}

.cm-scrollbar__bar.is-horizontal {
  height: 6px;
  left: 2px;
}

.cm-scrollbar__bar.is-horizontal > div {
  height: 100%;
}

.cm-scrollbar-fade-enter-active {
  transition: opacity 340ms ease-out;
}

.cm-scrollbar-fade-leave-active {
  transition: opacity 120ms ease-out;
}

.cm-scrollbar-fade-enter-from,
.cm-scrollbar-fade-leave-active {
  opacity: 0;
}

.cm-select-dropdown {
  z-index: calc(var(--cm-index-top) + 1);
  border-radius: var(--cm-border-radius-base);
  box-sizing: border-box;
}

.cm-select-dropdown .cm-scrollbar.is-empty .cm-select-dropdown__list {
  padding: 0;
}

.cm-select-dropdown__option-item.is-selected:not(.is-multiple).is-disabled {
  color: var(--cm-text-color-disabled);
}

.cm-select-dropdown__option-item.is-selected:not(.is-multiple).is-disabled::after {
  background-color: var(--cm-text-color-disabled);
}

.cm-select-dropdown__option-item:hover:not(.hover) {
  background-color: transparent;
}

.cm-select-dropdown.is-multiple .cm-select-dropdown__option-item.is-disabled.is-selected {
  color: var(--cm-text-color-disabled);
}

.cm-select-dropdown__empty {
  padding: 10px 0;
  margin: 0;
  text-align: center;
  color: var(--cm-text-color-secondary);
  font-size: var(--cm-select-font-size);
}

.cm-select-dropdown__wrap {
  max-height: 274px;
}

.cm-select-dropdown__list {
  list-style: none;
  margin: 6px 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
}

.cm-select-dropdown__option-item {
  font-size: var(--cm-select-font-size);
  padding: 0 32px 0 20px;
  position: relative;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--cm-text-color-regular);
  height: 34px;
  line-height: 34px;
  box-sizing: border-box;
  cursor: pointer;
}

.cm-select-dropdown__option-item.is-disabled {
  color: var(--cm-text-color-placeholder);
  cursor: not-allowed;
}

.cm-select-dropdown__option-item.is-disabled:hover {
  background-color: var(--cm-bg-color);
}

.cm-select-dropdown__option-item.is-selected {
  background-color: var(--cm-fill-color-light);
  font-weight: 700;
}

.cm-select-dropdown__option-item.is-selected:not(.is-multiple) {
  color: var(--cm-color-primary);
}

.cm-select-dropdown__option-item.hover {
  background-color: var(--cm-fill-color-light) !important;
}

.cm-select-dropdown__option-item:hover {
  background-color: var(--cm-fill-color-light);
}

.cm-select-dropdown.is-multiple .cm-select-dropdown__option-item.is-selected {
  color: var(--cm-color-primary);
  background-color: var(--cm-bg-color-overlay);
}

.cm-select-dropdown.is-multiple .cm-select-dropdown__option-item.is-selected .cm-icon {
  position: absolute;
  right: 20px;
  top: 0;
  height: inherit;
  font-size: 12px;
}

.cm-select-dropdown.is-multiple .cm-select-dropdown__option-item.is-selected .cm-icon svg {
  height: inherit;
  vertical-align: middle;
}

.cm-select-group {
  margin: 0;
  padding: 0;
}

.cm-select-group__wrap {
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
}

.cm-select-group__wrap:not(:last-of-type) {
  padding-bottom: 24px;
}

.cm-select-group__wrap:not(:last-of-type)::after {
  content: "";
  position: absolute;
  display: block;
  left: 20px;
  right: 20px;
  bottom: 12px;
  height: 1px;
  background: var(--cm-border-color-light);
}

.cm-select-group__split-dash {
  position: absolute;
  left: 20px;
  right: 20px;
  height: 1px;
  background: var(--cm-border-color-light);
}

.cm-select-group__title {
  padding-left: 20px;
  font-size: 12px;
  color: var(--cm-color-info);
  line-height: 30px;
}

.cm-select-group .cm-select-dropdown__item {
  padding-left: 20px;
}

.cm-select-v2 {
  --cm-select-border-color-hover: var(--cm-border-color-hover);
  --cm-select-disabled-border: var(--cm-disabled-border-color);
  --cm-select-font-size: var(--cm-font-size-base);
  --cm-select-close-hover-color: var(--cm-text-color-secondary);
  --cm-select-input-color: var(--cm-text-color-placeholder);
  --cm-select-multiple-input-color: var(--cm-text-color-regular);
  --cm-select-input-focus-border-color: var(--cm-color-primary);
  --cm-select-input-font-size: 14px;
}

.cm-select-v2 {
  display: inline-block;
  position: relative;
  vertical-align: middle;
  font-size: 14px;
}

.cm-select-v2__wrapper {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
  box-sizing: border-box;
  cursor: pointer;
  padding: 1px 30px 1px 0;
  border: 1px solid var(--cm-border-color);
  border-radius: var(--cm-border-radius-base);
  background-color: var(--cm-fill-color-blank);
  transition: var(--cm-transition-duration);
}

.cm-select-v2__wrapper:hover {
  border-color: var(--cm-text-color-placeholder);
}

.cm-select-v2__wrapper.is-filterable {
  cursor: text;
}

.cm-select-v2__wrapper.is-focused {
  border-color: var(--cm-color-primary);
}

.cm-select-v2__wrapper.is-hovering:not(.is-focused) {
  border-color: var(--cm-border-color-hover);
}

.cm-select-v2__wrapper.is-disabled {
  cursor: not-allowed;
  background-color: var(--cm-fill-color-light);
  color: var(--cm-text-color-placeholder);
  border-color: var(--cm-select-disabled-border);
}

.cm-select-v2__wrapper.is-disabled:hover {
  border-color: var(--cm-select-disabled-border);
}

.cm-select-v2__wrapper.is-disabled.is-focus {
  border-color: var(--cm-input-focus-border-color);
}

.cm-select-v2__wrapper.is-disabled .is-transparent {
  opacity: 1;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cm-select-v2__wrapper.is-disabled .cm-select-v2__caret {
  cursor: not-allowed;
}

.cm-select-v2__wrapper.is-disabled .cm-select-v2__combobox-input {
  cursor: not-allowed;
}

.cm-select-v2__wrapper .cm-select-v2__input-wrapper {
  box-sizing: border-box;
  position: relative;
  -webkit-margin-start: 12px;
  margin-inline-start: 12px;
  max-width: 100%;
  overflow: hidden;
}

.cm-select-v2__wrapper,
.cm-select-v2__wrapper .cm-select-v2__input-wrapper {
  line-height: 32px;
}

.cm-select-v2__wrapper .cm-select-v2__input-wrapper input {
  --cm-input-inner-height: calc(var(--cm-component-size, 32px) - 8px);
  height: var(--cm-input-inner-height);
  line-height: var(--cm-input-inner-height);
  min-width: 4px;
  width: 100%;
  background-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: 0 0;
  border: none;
  margin: 2px 0;
  outline: 0;
  padding: 0;
}

.cm-select-v2 .cm-select-v2__tags-text {
  display: inline-block;
  line-height: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cm-select-v2__empty {
  padding: 10px 0;
  margin: 0;
  text-align: center;
  color: var(--cm-text-color-secondary);
  font-size: 14px;
}

.cm-select-v2__popper.cm-popper {
  background: var(--cm-bg-color-overlay);
  border: 1px solid var(--cm-border-color-light);
  box-shadow: var(--cm-box-shadow-light);
}

.cm-select-v2__popper.cm-popper .cm-popper__arrow::before {
  border: 1px solid var(--cm-border-color-light);
}

.cm-select-v2__popper.cm-popper[data-popper-placement^=top] .cm-popper__arrow::before {
  border-top-color: transparent;
  border-left-color: transparent;
}

.cm-select-v2__popper.cm-popper[data-popper-placement^=bottom] .cm-popper__arrow::before {
  border-bottom-color: transparent;
  border-right-color: transparent;
}

.cm-select-v2__popper.cm-popper[data-popper-placement^=left] .cm-popper__arrow::before {
  border-left-color: transparent;
  border-bottom-color: transparent;
}

.cm-select-v2__popper.cm-popper[data-popper-placement^=right] .cm-popper__arrow::before {
  border-right-color: transparent;
  border-top-color: transparent;
}

.cm-select-v2--large .cm-select-v2__wrapper .cm-select-v2__combobox-input {
  height: 32px;
}

.cm-select-v2--large .cm-select-v2__caret {
  height: 40px;
}

.cm-select-v2--large .cm-select-v2__suffix {
  height: 40px;
}

.cm-select-v2--large .cm-select-v2__placeholder {
  font-size: 14px;
  line-height: 40px;
}

.cm-select-v2--small .cm-select-v2__wrapper .cm-select-v2__combobox-input {
  height: 16px;
}

.cm-select-v2--small .cm-select-v2__caret {
  height: 24px;
}

.cm-select-v2--small .cm-select-v2__suffix {
  height: 24px;
}

.cm-select-v2--small .cm-select-v2__placeholder {
  font-size: 12px;
  line-height: 24px;
}

.cm-select-v2 .cm-select-v2__selection > span {
  display: inline-block;
}

.cm-select-v2:hover .cm-select-v2__combobox-input {
  border-color: var(--cm-select-border-color-hover);
}

.cm-select-v2 .cm-select__selection-text {
  text-overflow: ellipsis;
  display: inline-block;
  overflow-x: hidden;
  vertical-align: bottom;
}

.cm-select-v2 .cm-select-v2__combobox-input {
  padding-right: 35px;
  display: block;
  color: var(--cm-text-color-regular);
}

.cm-select-v2 .cm-select-v2__combobox-input:focus {
  border-color: var(--cm-select-input-focus-border-color);
}

.cm-select-v2__input {
  border: none;
  outline: 0;
  padding: 0;
  margin-left: 15px;
  color: var(--cm-select-multiple-input-color);
  font-size: var(--cm-select-font-size);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  height: 28px;
}

.cm-select-v2__input.is-small {
  height: 14px;
}

.cm-select-v2__close {
  cursor: pointer;
  position: absolute;
  top: 8px;
  z-index: var(--cm-index-top);
  right: 25px;
  color: var(--cm-select-input-color);
  line-height: 18px;
  font-size: var(--cm-select-input-font-size);
}

.cm-select-v2__close:hover {
  color: var(--cm-select-close-hover-color);
}

.cm-select-v2__suffix {
  display: inline-flex;
  position: absolute;
  right: 12px;
  height: 32px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--cm-input-icon-color, var(--cm-text-color-placeholder));
}

.cm-select-v2__suffix .cm-input__icon {
  height: inherit;
}

.cm-select-v2__suffix .cm-input__icon:not(:first-child) {
  margin-left: 8px;
}

.cm-select-v2__caret {
  color: var(--cm-select-input-color);
  font-size: var(--cm-select-input-font-size);
  transition: var(--cm-transition-duration);
  transform: rotateZ(180deg);
  cursor: pointer;
}

.cm-select-v2__caret.is-reverse {
  transform: rotateZ(0);
}

.cm-select-v2__caret.is-show-close {
  font-size: var(--cm-select-font-size);
  text-align: center;
  transform: rotateZ(180deg);
  border-radius: var(--cm-border-radius-circle);
  color: var(--cm-select-input-color);
  transition: var(--cm-transition-color);
}

.cm-select-v2__caret.is-show-close:hover {
  color: var(--cm-select-close-hover-color);
}

.cm-select-v2__caret.cm-icon {
  height: inherit;
}

.cm-select-v2__caret.cm-icon svg {
  vertical-align: middle;
}

.cm-select-v2__selection {
  white-space: normal;
  z-index: var(--cm-index-normal);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
}

.cm-select-v2__input-calculator {
  left: 0;
  position: absolute;
  top: 0;
  visibility: hidden;
  white-space: pre;
  z-index: 999;
}

.cm-select-v2__selected-item {
  line-height: inherit;
  height: inherit;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: flex;
  flex-wrap: wrap;
}

.cm-select-v2__placeholder {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-margin-start: 12px;
  margin-inline-start: 12px;
  width: calc(100% - 52px);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--cm-input-text-color, var(--cm-text-color-regular));
}

.cm-select-v2__placeholder.is-transparent {
  color: var(--cm-text-color-placeholder);
}

.cm-select-v2 .cm-select-v2__selection .cm-tag {
  box-sizing: border-box;
  border-color: transparent;
  margin: 2px 0 2px 6px;
  background-color: var(--cm-fill-color);
}

.cm-select-v2 .cm-select-v2__selection .cm-tag .cm-icon-close {
  background-color: var(--cm-text-color-placeholder);
  right: -7px;
  color: var(--cm-color-white);
}

.cm-select-v2 .cm-select-v2__selection .cm-tag .cm-icon-close:hover {
  background-color: var(--cm-text-color-secondary);
}

.cm-select-v2 .cm-select-v2__selection .cm-tag .cm-icon-close::before {
  display: block;
  transform: translate(0, 0.5px);
}

.cm-select-v2.cm-select-v2--small .cm-select-v2__selection .cm-tag {
  margin: 1px 0 1px 6px;
  height: 18px;
}

.cm-select-dropdown {
  z-index: calc(var(--cm-index-top) + 1);
  border-radius: var(--cm-border-radius-base);
  box-sizing: border-box;
}

.cm-select-dropdown.is-multiple .cm-select-dropdown__item.selected {
  color: var(--cm-color-primary);
  background-color: var(--cm-bg-color-overlay);
}

.cm-select-dropdown.is-multiple .cm-select-dropdown__item.selected.hover {
  background-color: var(--cm-fill-color-light);
}

.cm-select-dropdown.is-multiple .cm-select-dropdown__item.selected::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  border-top: none;
  border-right: none;
  background-repeat: no-repeat;
  background-position: center;
  background-color: var(--cm-color-primary);
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
  mask-size: 100% 100%;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
}

.cm-select-dropdown.is-multiple .cm-select-dropdown__item.selected.is-disabled::after {
  background-color: var(--cm-text-color-disabled);
}

.cm-select-dropdown .cm-select-dropdown__option-item.is-selected::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  border-top: none;
  border-right: none;
  background-repeat: no-repeat;
  background-position: center;
  background-color: var(--cm-color-primary);
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
  mask-size: 100% 100%;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
  -webkit-mask-size: 100% 100%;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
}

.cm-select-dropdown .cm-scrollbar.is-empty .cm-select-dropdown__list {
  padding: 0;
}

.cm-select-dropdown .cm-select-dropdown__item.is-disabled:hover {
  background-color: unset;
}

.cm-select-dropdown .cm-select-dropdown__item.is-disabled.selected {
  color: var(--cm-text-color-disabled);
}

.cm-select-dropdown__empty {
  padding: 10px 0;
  margin: 0;
  text-align: center;
  color: var(--cm-text-color-secondary);
  font-size: var(--cm-select-font-size);
}

.cm-select-dropdown__wrap {
  max-height: 274px;
}

.cm-select-dropdown__list {
  list-style: none;
  padding: 6px 0;
  margin: 0;
  box-sizing: border-box;
}

.cm-select {
  --cm-select-border-color-hover: var(--cm-border-color-hover);
  --cm-select-disabled-border: var(--cm-disabled-border-color);
  --cm-select-font-size: var(--cm-font-size-base);
  --cm-select-close-hover-color: var(--cm-text-color-secondary);
  --cm-select-input-color: var(--cm-text-color-placeholder);
  --cm-select-multiple-input-color: var(--cm-text-color-regular);
  --cm-select-input-focus-border-color: var(--cm-color-primary);
  --cm-select-input-font-size: 14px;
}

.cm-select {
  display: inline-block;
  position: relative;
  vertical-align: middle;
  line-height: 32px;
}

.cm-select__popper.cm-popper {
  background: var(--cm-bg-color-overlay);
  border: 1px solid var(--cm-border-color-light);
  box-shadow: var(--cm-box-shadow-light);
}

.cm-select__popper.cm-popper .cm-popper__arrow::before {
  border: 1px solid var(--cm-border-color-light);
}

.cm-select__popper.cm-popper[data-popper-placement^=top] .cm-popper__arrow::before {
  border-top-color: transparent;
  border-left-color: transparent;
}

.cm-select__popper.cm-popper[data-popper-placement^=bottom] .cm-popper__arrow::before {
  border-bottom-color: transparent;
  border-right-color: transparent;
}

.cm-select__popper.cm-popper[data-popper-placement^=left] .cm-popper__arrow::before {
  border-left-color: transparent;
  border-bottom-color: transparent;
}

.cm-select__popper.cm-popper[data-popper-placement^=right] .cm-popper__arrow::before {
  border-right-color: transparent;
  border-top-color: transparent;
}

.cm-select .cm-select-tags-wrapper.has-prefix {
  margin-left: 6px;
}

.cm-select--large {
  line-height: 40px;
}

.cm-select--large .cm-select-tags-wrapper.has-prefix {
  margin-left: 8px;
}

.cm-select--small {
  line-height: 24px;
}

.cm-select--small .cm-select-tags-wrapper.has-prefix {
  margin-left: 4px;
}

.cm-select .cm-select__tags > span {
  display: inline-block;
}

.cm-select:hover:not(.cm-select--disabled) .cm-input__wrapper {
  box-shadow: 0 0 0 1px var(--cm-select-border-color-hover) inset;
}

.cm-select .cm-select__tags-text {
  display: inline-block;
  line-height: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cm-select .cm-input__wrapper {
  cursor: pointer;
}

.cm-select .cm-input__wrapper.is-focus {
  box-shadow: 0 0 0 1px var(--cm-select-input-focus-border-color) inset !important;
}

.cm-select .cm-input__inner {
  cursor: pointer;
}

.cm-select .cm-input {
  display: flex;
}

.cm-select .cm-input .cm-select__caret {
  color: var(--cm-select-input-color);
  font-size: var(--cm-select-input-font-size);
  transition: transform var(--cm-transition-duration);
  transform: rotateZ(0);
  cursor: pointer;
}

.cm-select .cm-input .cm-select__caret.is-reverse {
  transform: rotateZ(-180deg);
}

.cm-select .cm-input .cm-select__caret.is-show-close {
  font-size: var(--cm-select-font-size);
  text-align: center;
  transform: rotateZ(0);
  border-radius: var(--cm-border-radius-circle);
  color: var(--cm-select-input-color);
  transition: var(--cm-transition-color);
}

.cm-select .cm-input .cm-select__caret.is-show-close:hover {
  color: var(--cm-select-close-hover-color);
}

.cm-select .cm-input .cm-select__caret.cm-icon {
  position: relative;
  height: inherit;
  z-index: 2;
}

.cm-select .cm-input.is-disabled .cm-input__wrapper {
  cursor: not-allowed;
}

.cm-select .cm-input.is-disabled .cm-input__wrapper:hover {
  box-shadow: 0 0 0 1px var(--cm-select-disabled-border) inset;
}

.cm-select .cm-input.is-disabled .cm-input__inner {
  cursor: not-allowed;
}

.cm-select .cm-input.is-disabled .cm-select__caret {
  cursor: not-allowed;
}

.cm-select .cm-input.is-focus .cm-input__wrapper {
  box-shadow: 0 0 0 1px var(--cm-select-input-focus-border-color) inset !important;
}

.cm-select__input {
  border: none;
  outline: 0;
  padding: 0;
  margin-left: 15px;
  color: var(--cm-select-multiple-input-color);
  font-size: var(--cm-select-font-size);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  height: 28px;
  background-color: transparent;
}

.cm-select__input.is-disabled {
  cursor: not-allowed;
}

.cm-select__input--iOS {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 6;
}

.cm-select__input.is-small {
  height: 14px;
}

.cm-select__close {
  cursor: pointer;
  position: absolute;
  top: 8px;
  z-index: var(--cm-index-top);
  right: 25px;
  color: var(--cm-select-input-color);
  line-height: 18px;
  font-size: var(--cm-select-input-font-size);
}

.cm-select__close:hover {
  color: var(--cm-select-close-hover-color);
}

.cm-select__tags {
  position: absolute;
  line-height: normal;
  top: 50%;
  transform: translateY(-50%);
  white-space: normal;
  z-index: var(--cm-index-normal);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  cursor: pointer;
}

.cm-select__tags .cm-tag {
  box-sizing: border-box;
  border-color: transparent;
  margin: 2px 6px 2px 0;
}

.cm-select__tags .cm-tag:last-child {
  margin-right: 0;
}

.cm-select__tags .cm-tag .cm-icon-close {
  background-color: var(--cm-text-color-placeholder);
  right: -7px;
  top: 0;
  color: #fff;
}

.cm-select__tags .cm-tag .cm-icon-close:hover {
  background-color: var(--cm-text-color-secondary);
}

.cm-select__tags .cm-tag .cm-icon-close::before {
  display: block;
  transform: translate(0, 0.5px);
}

.cm-select__tags .cm-tag--info {
  background-color: var(--cm-fill-color);
}

.cm-select__tags.is-disabled {
  cursor: not-allowed;
}

.cm-select__collapse-tags {
  white-space: normal;
  z-index: var(--cm-index-normal);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  cursor: pointer;
}

.cm-select__collapse-tags .cm-tag {
  box-sizing: border-box;
  border-color: transparent;
  margin: 2px 6px 2px 0;
}

.cm-select__collapse-tags .cm-tag:last-child {
  margin-right: 0;
}

.cm-select__collapse-tags .cm-tag .cm-icon-close {
  background-color: var(--cm-text-color-placeholder);
  right: -7px;
  top: 0;
  color: #fff;
}

.cm-select__collapse-tags .cm-tag .cm-icon-close:hover {
  background-color: var(--cm-text-color-secondary);
}

.cm-select__collapse-tags .cm-tag .cm-icon-close::before {
  display: block;
  transform: translate(0, 0.5px);
}

.cm-select__collapse-tags .cm-tag--info {
  background-color: var(--cm-fill-color);
}

.cm-select__collapse-tag {
  line-height: inherit;
  height: inherit;
  display: flex;
}

.cm-skeleton {
  --cm-skeleton-circle-size: var(--cm-avatar-size);
}

.cm-skeleton__item {
  background: var(--cm-skeleton-color);
  display: inline-block;
  height: 16px;
  border-radius: var(--cm-border-radius-base);
  width: 100%;
}

.cm-skeleton__circle {
  border-radius: 50%;
  width: var(--cm-skeleton-circle-size);
  height: var(--cm-skeleton-circle-size);
  line-height: var(--cm-skeleton-circle-size);
}

.cm-skeleton__button {
  height: 40px;
  width: 64px;
  border-radius: 4px;
}

.cm-skeleton__p {
  width: 100%;
}

.cm-skeleton__p.is-last {
  width: 61%;
}

.cm-skeleton__p.is-first {
  width: 33%;
}

.cm-skeleton__text {
  width: 100%;
  height: var(--cm-font-size-small);
}

.cm-skeleton__caption {
  height: var(--cm-font-size-extra-small);
}

.cm-skeleton__h1 {
  height: var(--cm-font-size-extra-large);
}

.cm-skeleton__h3 {
  height: var(--cm-font-size-large);
}

.cm-skeleton__h5 {
  height: var(--cm-font-size-medium);
}

.cm-skeleton__image {
  width: unset;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0;
}

.cm-skeleton__image svg {
  color: var(--cm-svg-monochrome-grey);
  fill: currentColor;
  width: 22%;
  height: 22%;
}

.cm-skeleton {
  --cm-skeleton-color: var(--cm-fill-color);
  --cm-skeleton-to-color: var(--cm-fill-color-darker);
}

@-webkit-keyframes cm-skeleton-loading {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
@keyframes cm-skeleton-loading {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
.cm-skeleton {
  width: 100%;
}

.cm-skeleton__first-line {
  height: 16px;
  margin-top: 16px;
  background: var(--cm-skeleton-color);
}

.cm-skeleton__paragraph {
  height: 16px;
  margin-top: 16px;
  background: var(--cm-skeleton-color);
}

.cm-skeleton.is-animated .cm-skeleton__item {
  background: linear-gradient(90deg, var(--cm-skeleton-color) 25%, var(--cm-skeleton-to-color) 37%, var(--cm-skeleton-color) 63%);
  background-size: 400% 100%;
  -webkit-animation: cm-skeleton-loading 1.4s ease infinite;
  animation: cm-skeleton-loading 1.4s ease infinite;
}

.cm-slider {
  --cm-slider-main-bg-color: var(--cm-color-primary);
  --cm-slider-runway-bg-color: var(--cm-border-color-light);
  --cm-slider-stop-bg-color: var(--cm-color-white);
  --cm-slider-disabled-color: var(--cm-text-color-placeholder);
  --cm-slider-border-radius: 3px;
  --cm-slider-height: 6px;
  --cm-slider-button-size: 20px;
  --cm-slider-button-wrapper-size: 36px;
  --cm-slider-button-wrapper-offset: -15px;
}

.cm-slider {
  width: 100%;
  height: 32px;
  display: flex;
  align-items: center;
}

.cm-slider__runway {
  flex: 1;
  height: var(--cm-slider-height);
  background-color: var(--cm-slider-runway-bg-color);
  border-radius: var(--cm-slider-border-radius);
  position: relative;
  cursor: pointer;
}

.cm-slider__runway.show-input {
  margin-right: 30px;
  width: auto;
}

.cm-slider__runway.is-disabled {
  cursor: default;
}

.cm-slider__runway.is-disabled .cm-slider__bar {
  background-color: var(--cm-slider-disabled-color);
}

.cm-slider__runway.is-disabled .cm-slider__button {
  border-color: var(--cm-slider-disabled-color);
}

.cm-slider__runway.is-disabled .cm-slider__button-wrapper.hover,
.cm-slider__runway.is-disabled .cm-slider__button-wrapper:hover {
  cursor: not-allowed;
}

.cm-slider__runway.is-disabled .cm-slider__button-wrapper.dragging {
  cursor: not-allowed;
}

.cm-slider__runway.is-disabled .cm-slider__button.dragging,
.cm-slider__runway.is-disabled .cm-slider__button.hover,
.cm-slider__runway.is-disabled .cm-slider__button:hover {
  transform: scale(1);
}

.cm-slider__runway.is-disabled .cm-slider__button.hover,
.cm-slider__runway.is-disabled .cm-slider__button:hover {
  cursor: not-allowed;
}

.cm-slider__runway.is-disabled .cm-slider__button.dragging {
  cursor: not-allowed;
}

.cm-slider__input {
  flex-shrink: 0;
  width: 130px;
}

.cm-slider__bar {
  height: var(--cm-slider-height);
  background-color: var(--cm-slider-main-bg-color);
  border-top-left-radius: var(--cm-slider-border-radius);
  border-bottom-left-radius: var(--cm-slider-border-radius);
  position: absolute;
}

.cm-slider__button-wrapper {
  height: var(--cm-slider-button-wrapper-size);
  width: var(--cm-slider-button-wrapper-size);
  position: absolute;
  z-index: 1;
  top: var(--cm-slider-button-wrapper-offset);
  transform: translateX(-50%);
  background-color: transparent;
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  line-height: normal;
  outline: 0;
}

.cm-slider__button-wrapper::after {
  display: inline-block;
  content: "";
  height: 100%;
  vertical-align: middle;
}

.cm-slider__button-wrapper.hover,
.cm-slider__button-wrapper:hover {
  cursor: -webkit-grab;
  cursor: grab;
}

.cm-slider__button-wrapper.dragging {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.cm-slider__button {
  display: inline-block;
  width: var(--cm-slider-button-size);
  height: var(--cm-slider-button-size);
  vertical-align: middle;
  border: solid 2px var(--cm-slider-main-bg-color);
  background-color: var(--cm-color-white);
  border-radius: 50%;
  box-sizing: border-box;
  transition: var(--cm-transition-duration-fast);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cm-slider__button.dragging,
.cm-slider__button.hover,
.cm-slider__button:hover {
  transform: scale(1.2);
}

.cm-slider__button.hover,
.cm-slider__button:hover {
  cursor: -webkit-grab;
  cursor: grab;
}

.cm-slider__button.dragging {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.cm-slider__stop {
  position: absolute;
  height: var(--cm-slider-height);
  width: var(--cm-slider-height);
  border-radius: var(--cm-border-radius-circle);
  background-color: var(--cm-slider-stop-bg-color);
  transform: translateX(-50%);
}

.cm-slider__marks {
  top: 0;
  left: 12px;
  width: 18px;
  height: 100%;
}

.cm-slider__marks-text {
  position: absolute;
  transform: translateX(-50%);
  font-size: 14px;
  color: var(--cm-color-info);
  margin-top: 15px;
  white-space: pre;
}

.cm-slider.is-vertical {
  position: relative;
  display: inline-flex;
  width: auto;
  height: 100%;
  flex: 0;
}

.cm-slider.is-vertical .cm-slider__runway {
  width: var(--cm-slider-height);
  height: 100%;
  margin: 0 16px;
}

.cm-slider.is-vertical .cm-slider__bar {
  width: var(--cm-slider-height);
  height: auto;
  border-radius: 0 0 3px 3px;
}

.cm-slider.is-vertical .cm-slider__button-wrapper {
  top: auto;
  left: var(--cm-slider-button-wrapper-offset);
  transform: translateY(50%);
}

.cm-slider.is-vertical .cm-slider__stop {
  transform: translateY(50%);
}

.cm-slider.is-vertical .cm-slider__marks-text {
  margin-top: 0;
  left: 15px;
  transform: translateY(50%);
}

.cm-slider--large {
  height: 40px;
}

.cm-slider--small {
  height: 24px;
}

.cm-space {
  display: inline-flex;
  vertical-align: top;
}

.cm-space__item {
  display: flex;
  flex-wrap: wrap;
}

.cm-space__item > * {
  flex: 1;
}

.cm-space--vertical {
  flex-direction: column;
}

.cm-time-spinner {
  width: 100%;
  white-space: nowrap;
}

.cm-spinner {
  display: inline-block;
  vertical-align: middle;
}

.cm-spinner-inner {
  -webkit-animation: rotate 2s linear infinite;
  animation: rotate 2s linear infinite;
  width: 50px;
  height: 50px;
}

.cm-spinner-inner .path {
  stroke: var(--cm-border-color-lighter);
  stroke-linecap: round;
  -webkit-animation: dash 1.5s ease-in-out infinite;
  animation: dash 1.5s ease-in-out infinite;
}

@-webkit-keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes dash {
  0% {
    stroke-dasharray: 1, 150;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -35;
  }
  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -124;
  }
}
@keyframes dash {
  0% {
    stroke-dasharray: 1, 150;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -35;
  }
  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -124;
  }
}
.cm-step {
  position: relative;
  flex-shrink: 1;
}

.cm-step:last-of-type .cm-step__line {
  display: none;
}

.cm-step:last-of-type.is-flex {
  flex-basis: auto !important;
  flex-shrink: 0;
  flex-grow: 0;
}

.cm-step:last-of-type .cm-step__description,
.cm-step:last-of-type .cm-step__main {
  padding-right: 0;
}

.cm-step__head {
  position: relative;
  width: 100%;
}

.cm-step__head.is-process {
  color: var(--cm-text-color-primary);
  border-color: var(--cm-text-color-primary);
}

.cm-step__head.is-wait {
  color: var(--cm-text-color-placeholder);
  border-color: var(--cm-text-color-placeholder);
}

.cm-step__head.is-success {
  color: var(--cm-color-success);
  border-color: var(--cm-color-success);
}

.cm-step__head.is-error {
  color: var(--cm-color-danger);
  border-color: var(--cm-color-danger);
}

.cm-step__head.is-finish {
  color: var(--cm-color-primary);
  border-color: var(--cm-color-primary);
}

.cm-step__icon {
  position: relative;
  z-index: 1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  font-size: 14px;
  box-sizing: border-box;
  background: var(--cm-bg-color);
  transition: 0.15s ease-out;
}

.cm-step__icon.is-text {
  border-radius: 50%;
  border: 2px solid;
  border-color: inherit;
}

.cm-step__icon.is-icon {
  width: 40px;
}

.cm-step__icon-inner {
  display: inline-block;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  text-align: center;
  font-weight: 700;
  line-height: 1;
  color: inherit;
}

.cm-step__icon-inner[class*=cm-icon]:not(.is-status) {
  font-size: 25px;
  font-weight: 400;
}

.cm-step__icon-inner.is-status {
  transform: translateY(1px);
}

.cm-step__line {
  position: absolute;
  border-color: inherit;
  background-color: var(--cm-text-color-placeholder);
}

.cm-step__line-inner {
  display: block;
  border-width: 1px;
  border-style: solid;
  border-color: inherit;
  transition: 0.15s ease-out;
  box-sizing: border-box;
  width: 0;
  height: 0;
}

.cm-step__main {
  white-space: normal;
  text-align: left;
}

.cm-step__title {
  font-size: 16px;
  line-height: 38px;
}

.cm-step__title.is-process {
  font-weight: 700;
  color: var(--cm-text-color-primary);
}

.cm-step__title.is-wait {
  color: var(--cm-text-color-placeholder);
}

.cm-step__title.is-success {
  color: var(--cm-color-success);
}

.cm-step__title.is-error {
  color: var(--cm-color-danger);
}

.cm-step__title.is-finish {
  color: var(--cm-color-primary);
}

.cm-step__description {
  padding-right: 10%;
  margin-top: -5px;
  font-size: 12px;
  line-height: 20px;
  font-weight: 400;
}

.cm-step__description.is-process {
  color: var(--cm-text-color-primary);
}

.cm-step__description.is-wait {
  color: var(--cm-text-color-placeholder);
}

.cm-step__description.is-success {
  color: var(--cm-color-success);
}

.cm-step__description.is-error {
  color: var(--cm-color-danger);
}

.cm-step__description.is-finish {
  color: var(--cm-color-primary);
}

.cm-step.is-horizontal {
  display: inline-block;
}

.cm-step.is-horizontal .cm-step__line {
  height: 2px;
  top: 11px;
  left: 0;
  right: 0;
}

.cm-step.is-vertical {
  display: flex;
}

.cm-step.is-vertical .cm-step__head {
  flex-grow: 0;
  width: 24px;
}

.cm-step.is-vertical .cm-step__main {
  padding-left: 10px;
  flex-grow: 1;
}

.cm-step.is-vertical .cm-step__title {
  line-height: 24px;
  padding-bottom: 8px;
}

.cm-step.is-vertical .cm-step__line {
  width: 2px;
  top: 0;
  bottom: 0;
  left: 11px;
}

.cm-step.is-vertical .cm-step__icon.is-icon {
  width: 24px;
}

.cm-step.is-center .cm-step__head {
  text-align: center;
}

.cm-step.is-center .cm-step__main {
  text-align: center;
}

.cm-step.is-center .cm-step__description {
  padding-left: 20%;
  padding-right: 20%;
}

.cm-step.is-center .cm-step__line {
  left: 50%;
  right: -50%;
}

.cm-step.is-simple {
  display: flex;
  align-items: center;
}

.cm-step.is-simple .cm-step__head {
  width: auto;
  font-size: 0;
  padding-right: 10px;
}

.cm-step.is-simple .cm-step__icon {
  background: 0 0;
  width: 16px;
  height: 16px;
  font-size: 12px;
}

.cm-step.is-simple .cm-step__icon-inner[class*=cm-icon]:not(.is-status) {
  font-size: 18px;
}

.cm-step.is-simple .cm-step__icon-inner.is-status {
  transform: scale(0.8) translateY(1px);
}

.cm-step.is-simple .cm-step__main {
  position: relative;
  display: flex;
  align-items: stretch;
  flex-grow: 1;
}

.cm-step.is-simple .cm-step__title {
  font-size: 16px;
  line-height: 20px;
}

.cm-step.is-simple:not(:last-of-type) .cm-step__title {
  max-width: 50%;
  word-break: break-all;
}

.cm-step.is-simple .cm-step__arrow {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cm-step.is-simple .cm-step__arrow::after,
.cm-step.is-simple .cm-step__arrow::before {
  content: "";
  display: inline-block;
  position: absolute;
  height: 15px;
  width: 1px;
  background: var(--cm-text-color-placeholder);
}

.cm-step.is-simple .cm-step__arrow::before {
  transform: rotate(-45deg) translateY(-4px);
  transform-origin: 0 0;
}

.cm-step.is-simple .cm-step__arrow::after {
  transform: rotate(45deg) translateY(4px);
  transform-origin: 100% 100%;
}

.cm-step.is-simple:last-of-type .cm-step__arrow {
  display: none;
}

.cm-steps {
  display: flex;
}

.cm-steps--simple {
  padding: 13px 8%;
  border-radius: 4px;
  background: var(--cm-fill-color-light);
}

.cm-steps--horizontal {
  white-space: nowrap;
}

.cm-steps--vertical {
  height: 100%;
  flex-flow: column;
}

.cm-switch {
  --cm-switch-on-color: var(--cm-color-primary);
  --cm-switch-off-color: var(--cm-border-color);
}

.cm-switch {
  display: inline-flex;
  align-items: center;
  position: relative;
  font-size: 14px;
  line-height: 20px;
  height: 32px;
  vertical-align: middle;
}

.cm-switch.is-disabled .cm-switch__core,
.cm-switch.is-disabled .cm-switch__label {
  cursor: not-allowed;
}

.cm-switch__label {
  transition: var(--cm-transition-duration-fast);
  height: 20px;
  display: inline-block;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  vertical-align: middle;
  color: var(--cm-text-color-primary);
}

.cm-switch__label.is-active {
  color: var(--cm-color-primary);
}

.cm-switch__labcm--left {
  margin-right: 10px;
}

.cm-switch__labcm--right {
  margin-left: 10px;
}

.cm-switch__label * {
  line-height: 1;
  font-size: 14px;
  display: inline-block;
}

.cm-switch__label .cm-icon {
  height: inherit;
}

.cm-switch__label .cm-icon svg {
  vertical-align: middle;
}

.cm-switch__input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  margin: 0;
}

.cm-switch__input:focus-visible ~ .cm-switch__core {
  outline: 2px solid var(--cm-switch-on-color);
  outline-offset: 1px;
}

.cm-switch__core {
  display: inline-flex;
  position: relative;
  align-items: center;
  min-width: 40px;
  height: 20px;
  border: 1px solid var(--cm-switch-border-color, var(--cm-switch-off-color));
  outline: 0;
  border-radius: 10px;
  box-sizing: border-box;
  background: var(--cm-switch-off-color);
  cursor: pointer;
  transition: border-color var(--cm-transition-duration), background-color var(--cm-transition-duration);
}

.cm-switch__core .cm-switch__inner {
  width: 100%;
  transition: all var(--cm-transition-duration);
  height: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  padding: 0 4px 0 18px;
}

.cm-switch__core .cm-switch__inner .is-icon,
.cm-switch__core .cm-switch__inner .is-text {
  font-size: 12px;
  color: var(--cm-color-white);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cm-switch__core .cm-switch__action {
  position: absolute;
  left: 1px;
  border-radius: var(--cm-border-radius-circle);
  transition: all var(--cm-transition-duration);
  width: 16px;
  height: 16px;
  background-color: var(--cm-color-white);
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--cm-switch-off-color);
}

.cm-switch.is-checked .cm-switch__core {
  border-color: var(--cm-switch-border-color, var(--cm-switch-on-color));
  background-color: var(--cm-switch-on-color);
}

.cm-switch.is-checked .cm-switch__core .cm-switch__action {
  left: calc(100% - 17px);
  color: var(--cm-switch-on-color);
}

.cm-switch.is-checked .cm-switch__core .cm-switch__inner {
  padding: 0 18px 0 4px;
}

.cm-switch.is-disabled {
  opacity: 0.6;
}

.cm-switch--wide .cm-switch__label.cm-switch__labcm--left span {
  left: 10px;
}

.cm-switch--wide .cm-switch__label.cm-switch__labcm--right span {
  right: 10px;
}

.cm-switch .labcm-fade-enter-from,
.cm-switch .labcm-fade-leave-active {
  opacity: 0;
}

.cm-switch--large {
  font-size: 14px;
  line-height: 24px;
  height: 40px;
}

.cm-switch--large .cm-switch__label {
  height: 24px;
  font-size: 14px;
}

.cm-switch--large .cm-switch__label * {
  font-size: 14px;
}

.cm-switch--large .cm-switch__core {
  min-width: 50px;
  height: 24px;
  border-radius: 12px;
}

.cm-switch--large .cm-switch__core .cm-switch__inner {
  height: 20px;
  padding: 0 6px 0 22px;
}

.cm-switch--large .cm-switch__core .cm-switch__action {
  width: 20px;
  height: 20px;
}

.cm-switch--large.is-checked .cm-switch__core .cm-switch__action {
  left: calc(100% - 21px);
}

.cm-switch--large.is-checked .cm-switch__core .cm-switch__inner {
  padding: 0 22px 0 6px;
}

.cm-switch--small {
  font-size: 12px;
  line-height: 16px;
  height: 24px;
}

.cm-switch--small .cm-switch__label {
  height: 16px;
  font-size: 12px;
}

.cm-switch--small .cm-switch__label * {
  font-size: 12px;
}

.cm-switch--small .cm-switch__core {
  min-width: 30px;
  height: 16px;
  border-radius: 8px;
}

.cm-switch--small .cm-switch__core .cm-switch__inner {
  height: 12px;
  padding: 0 2px 0 14px;
}

.cm-switch--small .cm-switch__core .cm-switch__action {
  width: 12px;
  height: 12px;
}

.cm-switch--small.is-checked .cm-switch__core .cm-switch__action {
  left: calc(100% - 13px);
}

.cm-switch--small.is-checked .cm-switch__core .cm-switch__inner {
  padding: 0 14px 0 2px;
}

.cm-table-column--selection .cell {
  padding-left: 14px;
  padding-right: 14px;
}

.cm-table-filter {
  border: solid 1px var(--cm-border-color-lighter);
  border-radius: 2px;
  background-color: #fff;
  box-shadow: var(--cm-box-shadow-light);
  box-sizing: border-box;
}

.cm-table-filter__list {
  padding: 5px 0;
  margin: 0;
  list-style: none;
  min-width: 100px;
}

.cm-table-filter__list-item {
  line-height: 36px;
  padding: 0 10px;
  cursor: pointer;
  font-size: var(--cm-font-size-base);
}

.cm-table-filter__list-item:hover {
  background-color: var(--cm-color-primary-light-9);
  color: var(--cm-color-primary);
}

.cm-table-filter__list-item.is-active {
  background-color: var(--cm-color-primary);
  color: #fff;
}

.cm-table-filter__content {
  min-width: 100px;
}

.cm-table-filter__bottom {
  border-top: 1px solid var(--cm-border-color-lighter);
  padding: 8px;
}

.cm-table-filter__bottom button {
  background: 0 0;
  border: none;
  color: var(--cm-text-color-regular);
  cursor: pointer;
  font-size: var(--cm-font-size-small);
  padding: 0 3px;
}

.cm-table-filter__bottom button:hover {
  color: var(--cm-color-primary);
}

.cm-table-filter__bottom button:focus {
  outline: 0;
}

.cm-table-filter__bottom button.is-disabled {
  color: var(--cm-disabled-text-color);
  cursor: not-allowed;
}

.cm-table-filter__wrap {
  max-height: 280px;
}

.cm-table-filter__checkbox-group {
  padding: 10px;
}

.cm-table-filter__checkbox-group label.cm-checkbox {
  display: flex;
  align-items: center;
  margin-right: 5px;
  margin-bottom: 12px;
  margin-left: 5px;
  height: unset;
}

.cm-table-filter__checkbox-group .cm-checkbox:last-child {
  margin-bottom: 0;
}

.cm-table {
  --cm-table-border-color: var(--cm-border-color-lighter);
  --cm-table-border: 1px solid var(--cm-table-border-color);
  --cm-table-text-color: var(--cm-text-color-regular);
  --cm-table-header-text-color: var(--cm-text-color-secondary);
  --cm-table-row-hover-bg-color: var(--cm-fill-color-light);
  --cm-table-current-row-bg-color: var(--cm-color-primary-light-9);
  --cm-table-header-bg-color: var(--cm-bg-color);
  --cm-table-fixed-box-shadow: var(--cm-box-shadow-light);
  --cm-table-bg-color: var(--cm-fill-color-blank);
  --cm-table-tr-bg-color: var(--cm-fill-color-blank);
  --cm-table-expanded-cell-bg-color: var(--cm-fill-color-blank);
  --cm-table-fixed-left-column: inset 10px 0 10px -10px rgba(0, 0, 0, 0.15);
  --cm-table-fixed-right-column: inset -10px 0 10px -10px rgba(0, 0, 0, 0.15);
}

.cm-table {
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: 100%;
  max-width: 100%;
  background-color: var(--cm-table-bg-color);
  font-size: 14px;
  color: var(--cm-table-text-color);
}

.cm-table__inner-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.cm-table__inner-wrapper::before {
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
}

.cm-table.has-footer.cm-table--fluid-height tr:last-child td.cm-table__cell,
.cm-table.has-footer.cm-table--scrollable-y tr:last-child td.cm-table__cell {
  border-bottom-color: transparent;
}

.cm-table__empty-block {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  min-height: 60px;
  text-align: center;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.cm-table__empty-text {
  line-height: 60px;
  width: 50%;
  color: var(--cm-text-color-secondary);
}

.cm-table__expand-column .cell {
  padding: 0;
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cm-table__expand-icon {
  position: relative;
  cursor: pointer;
  color: var(--cm-text-color-regular);
  font-size: 12px;
  transition: transform var(--cm-transition-duration-fast) ease-in-out;
  height: 20px;
}

.cm-table__expand-icon--expanded {
  transform: rotate(90deg);
}

.cm-table__expand-icon > .cm-icon {
  font-size: 12px;
}

.cm-table__expanded-cell {
  background-color: var(--cm-table-expanded-cell-bg-color);
}

.cm-table__expanded-cell[class*=cell] {
  padding: 20px 50px;
}

.cm-table__expanded-cell:hover {
  background-color: transparent !important;
}

.cm-table__placeholder {
  display: inline-block;
  width: 20px;
}

.cm-table__append-wrapper {
  overflow: hidden;
}

.cm-table--fit {
  border-right: 0;
  border-bottom: 0;
}

.cm-table--fit .cm-table__cell.gutter {
  border-right-width: 1px;
}

.cm-table thead {
  color: var(--cm-table-header-text-color);
  font-weight: 500;
}

.cm-table thead.is-group th.cm-table__cell {
  background: var(--cm-fill-color-light);
}

.cm-table .cm-table__cell {
  padding: 8px 0;
  min-width: 0;
  box-sizing: border-box;
  text-overflow: ellipsis;
  vertical-align: middle;
  position: relative;
  text-align: left;
  z-index: 1;
}

.cm-table .cm-table__cell.is-center {
  text-align: center;
}

.cm-table .cm-table__cell.is-right {
  text-align: right;
}

.cm-table .cm-table__cell.gutter {
  width: 15px;
  border-right-width: 0;
  border-bottom-width: 0;
  padding: 0;
}

.cm-table .cm-table__cell.is-hidden > * {
  visibility: hidden;
}

.cm-table .cell {
  box-sizing: border-box;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  word-break: break-all;
  line-height: 23px;
  padding: 0 12px;
}

.cm-table .cell.cm-tooltip {
  white-space: nowrap;
  min-width: 50px;
}

.cm-table--large {
  font-size: var(--cm-font-size-base);
}

.cm-table--large .cm-table__cell {
  padding: 12px 0;
}

.cm-table--large .cell {
  padding: 0 16px;
}

.cm-table--default {
  font-size: 14px;
}

.cm-table--default .cm-table__cell {
  padding: 8px 0;
}

.cm-table--default .cell {
  padding: 0 12px;
}

.cm-table--small {
  font-size: 12px;
}

.cm-table--small .cm-table__cell {
  padding: 4px 0;
}

.cm-table--small .cell {
  padding: 0 8px;
}

.cm-table tr {
  background-color: var(--cm-table-tr-bg-color);
}

.cm-table tr input[type=checkbox] {
  margin: 0;
}

.cm-table td.cm-table__cell,
.cm-table th.cm-table__cell.is-leaf {
  border-bottom: var(--cm-table-border);
}

.cm-table th.cm-table__cell.is-sortable {
  cursor: pointer;
}

.cm-table th.cm-table__cell {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: var(--cm-table-header-bg-color);
}

.cm-table th.cm-table__cell > .cell.highlight {
  color: var(--cm-color-primary);
}

.cm-table th.cm-table__cell.required > div::before {
  display: inline-block;
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ff4d51;
  margin-right: 5px;
  vertical-align: middle;
}

.cm-table td.cm-table__cell div {
  box-sizing: border-box;
}

.cm-table td.cm-table__cell.gutter {
  width: 0;
}

.cm-table__footer-wrapper {
  border-top: var(--cm-table-border);
}

.cm-table--border .cm-table__inner-wrapper::after,
.cm-table--border::after,
.cm-table--border::before,
.cm-table__inner-wrapper::before {
  content: "";
  position: absolute;
  background-color: var(--cm-table-border-color);
  z-index: 3;
}

.cm-table--border .cm-table__inner-wrapper::after {
  left: 0;
  top: 0;
  width: 100%;
  height: 1px;
}

.cm-table--border::before {
  top: -1px;
  left: 0;
  width: 1px;
  height: 100%;
}

.cm-table--border::after {
  top: -1px;
  right: 0;
  width: 1px;
  height: 100%;
}

.cm-table--border .cm-table__inner-wrapper {
  border-right: none;
  border-bottom: none;
}

.cm-table--border .cm-table__footer-wrapper {
  position: relative;
  flex-shrink: 0;
}

.cm-table--border .cm-table__cell {
  border-right: var(--cm-table-border);
}

.cm-table--border th.cm-table__cell.gutter:last-of-type {
  border-bottom: var(--cm-table-border);
  border-bottom-width: 1px;
}

.cm-table--border th.cm-table__cell {
  border-bottom: var(--cm-table-border);
}

.cm-table--hidden {
  visibility: hidden;
}

.cm-table__body-wrapper,
.cm-table__footer-wrapper,
.cm-table__header-wrapper {
  width: 100%;
}

.cm-table__body-wrapper tr td.cm-table-fixed-column--left,
.cm-table__body-wrapper tr td.cm-table-fixed-column--right,
.cm-table__body-wrapper tr th.cm-table-fixed-column--left,
.cm-table__body-wrapper tr th.cm-table-fixed-column--right,
.cm-table__footer-wrapper tr td.cm-table-fixed-column--left,
.cm-table__footer-wrapper tr td.cm-table-fixed-column--right,
.cm-table__footer-wrapper tr th.cm-table-fixed-column--left,
.cm-table__footer-wrapper tr th.cm-table-fixed-column--right,
.cm-table__header-wrapper tr td.cm-table-fixed-column--left,
.cm-table__header-wrapper tr td.cm-table-fixed-column--right,
.cm-table__header-wrapper tr th.cm-table-fixed-column--left,
.cm-table__header-wrapper tr th.cm-table-fixed-column--right {
  position: -webkit-sticky !important;
  position: sticky !important;
  z-index: 2;
  background: var(--cm-bg-color);
}

.cm-table__body-wrapper tr td.cm-table-fixed-column--left.is-first-column::before,
.cm-table__body-wrapper tr td.cm-table-fixed-column--left.is-last-column::before,
.cm-table__body-wrapper tr td.cm-table-fixed-column--right.is-first-column::before,
.cm-table__body-wrapper tr td.cm-table-fixed-column--right.is-last-column::before,
.cm-table__body-wrapper tr th.cm-table-fixed-column--left.is-first-column::before,
.cm-table__body-wrapper tr th.cm-table-fixed-column--left.is-last-column::before,
.cm-table__body-wrapper tr th.cm-table-fixed-column--right.is-first-column::before,
.cm-table__body-wrapper tr th.cm-table-fixed-column--right.is-last-column::before,
.cm-table__footer-wrapper tr td.cm-table-fixed-column--left.is-first-column::before,
.cm-table__footer-wrapper tr td.cm-table-fixed-column--left.is-last-column::before,
.cm-table__footer-wrapper tr td.cm-table-fixed-column--right.is-first-column::before,
.cm-table__footer-wrapper tr td.cm-table-fixed-column--right.is-last-column::before,
.cm-table__footer-wrapper tr th.cm-table-fixed-column--left.is-first-column::before,
.cm-table__footer-wrapper tr th.cm-table-fixed-column--left.is-last-column::before,
.cm-table__footer-wrapper tr th.cm-table-fixed-column--right.is-first-column::before,
.cm-table__footer-wrapper tr th.cm-table-fixed-column--right.is-last-column::before,
.cm-table__header-wrapper tr td.cm-table-fixed-column--left.is-first-column::before,
.cm-table__header-wrapper tr td.cm-table-fixed-column--left.is-last-column::before,
.cm-table__header-wrapper tr td.cm-table-fixed-column--right.is-first-column::before,
.cm-table__header-wrapper tr td.cm-table-fixed-column--right.is-last-column::before,
.cm-table__header-wrapper tr th.cm-table-fixed-column--left.is-first-column::before,
.cm-table__header-wrapper tr th.cm-table-fixed-column--left.is-last-column::before,
.cm-table__header-wrapper tr th.cm-table-fixed-column--right.is-first-column::before,
.cm-table__header-wrapper tr th.cm-table-fixed-column--right.is-last-column::before {
  content: "";
  position: absolute;
  top: 0;
  width: 10px;
  bottom: -1px;
  overflow-x: hidden;
  overflow-y: hidden;
  box-shadow: none;
  touch-action: none;
  pointer-events: none;
}

.cm-table__body-wrapper tr td.cm-table-fixed-column--left.is-first-column::before,
.cm-table__body-wrapper tr td.cm-table-fixed-column--right.is-first-column::before,
.cm-table__body-wrapper tr th.cm-table-fixed-column--left.is-first-column::before,
.cm-table__body-wrapper tr th.cm-table-fixed-column--right.is-first-column::before,
.cm-table__footer-wrapper tr td.cm-table-fixed-column--left.is-first-column::before,
.cm-table__footer-wrapper tr td.cm-table-fixed-column--right.is-first-column::before,
.cm-table__footer-wrapper tr th.cm-table-fixed-column--left.is-first-column::before,
.cm-table__footer-wrapper tr th.cm-table-fixed-column--right.is-first-column::before,
.cm-table__header-wrapper tr td.cm-table-fixed-column--left.is-first-column::before,
.cm-table__header-wrapper tr td.cm-table-fixed-column--right.is-first-column::before,
.cm-table__header-wrapper tr th.cm-table-fixed-column--left.is-first-column::before,
.cm-table__header-wrapper tr th.cm-table-fixed-column--right.is-first-column::before {
  left: -10px;
}

.cm-table__body-wrapper tr td.cm-table-fixed-column--left.is-last-column::before,
.cm-table__body-wrapper tr td.cm-table-fixed-column--right.is-last-column::before,
.cm-table__body-wrapper tr th.cm-table-fixed-column--left.is-last-column::before,
.cm-table__body-wrapper tr th.cm-table-fixed-column--right.is-last-column::before,
.cm-table__footer-wrapper tr td.cm-table-fixed-column--left.is-last-column::before,
.cm-table__footer-wrapper tr td.cm-table-fixed-column--right.is-last-column::before,
.cm-table__footer-wrapper tr th.cm-table-fixed-column--left.is-last-column::before,
.cm-table__footer-wrapper tr th.cm-table-fixed-column--right.is-last-column::before,
.cm-table__header-wrapper tr td.cm-table-fixed-column--left.is-last-column::before,
.cm-table__header-wrapper tr td.cm-table-fixed-column--right.is-last-column::before,
.cm-table__header-wrapper tr th.cm-table-fixed-column--left.is-last-column::before,
.cm-table__header-wrapper tr th.cm-table-fixed-column--right.is-last-column::before {
  right: -10px;
  box-shadow: none;
}

.cm-table__body-wrapper tr td.cm-table__fixed-right-patch,
.cm-table__body-wrapper tr th.cm-table__fixed-right-patch,
.cm-table__footer-wrapper tr td.cm-table__fixed-right-patch,
.cm-table__footer-wrapper tr th.cm-table__fixed-right-patch,
.cm-table__header-wrapper tr td.cm-table__fixed-right-patch,
.cm-table__header-wrapper tr th.cm-table__fixed-right-patch {
  position: -webkit-sticky !important;
  position: sticky !important;
  z-index: 2;
  background: #fff;
  right: 0;
}

.cm-table__header-wrapper {
  flex-shrink: 0;
}

.cm-table__header-wrapper tr th.cm-table-fixed-column--left,
.cm-table__header-wrapper tr th.cm-table-fixed-column--right {
  background-color: var(--cm-table-header-bg-color);
}

.cm-table__body,
.cm-table__footer,
.cm-table__header {
  table-layout: fixed;
  border-collapse: separate;
}

.cm-table__footer-wrapper,
.cm-table__header-wrapper {
  overflow: hidden;
}

.cm-table__footer-wrapper tbody td.cm-table__cell,
.cm-table__header-wrapper tbody td.cm-table__cell {
  background-color: var(--cm-table-row-hover-bg-color);
  color: var(--cm-table-text-color);
}

.cm-table__body-wrapper .cm-table-column--selection > .cell,
.cm-table__header-wrapper .cm-table-column--selection > .cell {
  display: inline-flex;
  align-items: center;
  height: 23px;
}

.cm-table__body-wrapper .cm-table-column--selection .cm-checkbox,
.cm-table__header-wrapper .cm-table-column--selection .cm-checkbox {
  height: unset;
}

.cm-table.is-scrolling-left .cm-table-fixed-column--right.is-first-column::before {
  box-shadow: var(--cm-table-fixed-right-column);
}

.cm-table.is-scrolling-left.cm-table--border .cm-table-fixed-column--left.is-last-column.cm-table__cell {
  border-right: var(--cm-table-border);
}

.cm-table.is-scrolling-left th.cm-table-fixed-column--left {
  background-color: var(--cm-table-header-bg-color);
}

.cm-table.is-scrolling-right .cm-table-fixed-column--left.is-last-column::before {
  box-shadow: var(--cm-table-fixed-left-column);
}

.cm-table.is-scrolling-right .cm-table-fixed-column--left.is-last-column.cm-table__cell {
  border-right: none;
}

.cm-table.is-scrolling-right th.cm-table-fixed-column--right {
  background-color: var(--cm-table-header-bg-color);
}

.cm-table.is-scrolling-middle .cm-table-fixed-column--left.is-last-column.cm-table__cell {
  border-right: none;
}

.cm-table.is-scrolling-middle .cm-table-fixed-column--right.is-first-column::before {
  box-shadow: var(--cm-table-fixed-right-column);
}

.cm-table.is-scrolling-middle .cm-table-fixed-column--left.is-last-column::before {
  box-shadow: var(--cm-table-fixed-left-column);
}

.cm-table.is-scrolling-none .cm-table-fixed-column--left.is-first-column::before,
.cm-table.is-scrolling-none .cm-table-fixed-column--left.is-last-column::before,
.cm-table.is-scrolling-none .cm-table-fixed-column--right.is-first-column::before,
.cm-table.is-scrolling-none .cm-table-fixed-column--right.is-last-column::before {
  box-shadow: none;
}

.cm-table.is-scrolling-none th.cm-table-fixed-column--left,
.cm-table.is-scrolling-none th.cm-table-fixed-column--right {
  background-color: var(--cm-table-header-bg-color);
}

.cm-table__body-wrapper {
  overflow: hidden;
  position: relative;
  flex: 1;
}

.cm-table__body-wrapper .cm-scrollbar__bar {
  z-index: 2;
}

.cm-table .caret-wrapper {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  height: 14px;
  width: 24px;
  vertical-align: middle;
  cursor: pointer;
  overflow: initial;
  position: relative;
}

.cm-table .sort-caret {
  width: 0;
  height: 0;
  border: solid 5px transparent;
  position: absolute;
  left: 7px;
}

.cm-table .sort-caret.ascending {
  border-bottom-color: var(--cm-text-color-placeholder);
  top: -5px;
}

.cm-table .sort-caret.descending {
  border-top-color: var(--cm-text-color-placeholder);
  bottom: -3px;
}

.cm-table .ascending .sort-caret.ascending {
  border-bottom-color: var(--cm-color-primary);
}

.cm-table .descending .sort-caret.descending {
  border-top-color: var(--cm-color-primary);
}

.cm-table .hidden-columns {
  visibility: hidden;
  position: absolute;
  z-index: -1;
}

.cm-table--striped .cm-table__body tr.cm-table__row--striped td.cm-table__cell {
  background: var(--cm-fill-color-lighter);
}

.cm-table--striped .cm-table__body tr.cm-table__row--striped.current-row td.cm-table__cell {
  background-color: var(--cm-table-current-row-bg-color);
}

.cm-table__body tr.hover-row.current-row > td.cm-table__cell,
.cm-table__body tr.hover-row.cm-table__row--striped.current-row > td.cm-table__cell,
.cm-table__body tr.hover-row.cm-table__row--striped > td.cm-table__cell,
.cm-table__body tr.hover-row > td.cm-table__cell {
  background-color: var(--cm-table-row-hover-bg-color);
}

.cm-table__body tr.current-row > td.cm-table__cell {
  background-color: var(--cm-table-current-row-bg-color);
}

.cm-table__column-resize-proxy {
  position: absolute;
  left: 200px;
  top: 0;
  bottom: 0;
  width: 0;
  border-left: var(--cm-table-border);
  z-index: 10;
}

.cm-table__column-filter-trigger {
  display: inline-block;
  cursor: pointer;
}

.cm-table__column-filter-trigger i {
  color: var(--cm-color-info);
  font-size: 14px;
  vertical-align: middle;
}

.cm-table__border-left-patch {
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  z-index: 3;
  position: absolute;
  background-color: var(--cm-table-border-color);
}

.cm-table__border-bottom-patch {
  left: 0;
  height: 1px;
  z-index: 3;
  position: absolute;
  background-color: var(--cm-table-border-color);
}

.cm-table__border-right-patch {
  top: 0;
  height: 100%;
  width: 1px;
  z-index: 3;
  position: absolute;
  background-color: var(--cm-table-border-color);
}

.cm-table--enable-row-transition .cm-table__body td.cm-table__cell {
  transition: background-color 0.25s ease;
}

.cm-table--enable-row-hover .cm-table__body tr:hover > td.cm-table__cell {
  background-color: var(--cm-table-row-hover-bg-color);
}

.cm-table [class*=cm-table__row--level] .cm-table__expand-icon {
  display: inline-block;
  width: 12px;
  line-height: 12px;
  height: 12px;
  text-align: center;
  margin-right: 8px;
}

.cm-table .cm-table.cm-table--border .cm-table__cell {
  border-right: var(--cm-table-border);
}

.cm-table:not(.cm-table--border) .cm-table__cell {
  border-right: none;
}

.cm-table:not(.cm-table--border) > .cm-table__inner-wrapper::after {
  content: none;
}

.cm-table-v2 {
  --cm-table-border-color: var(--cm-border-color-lighter);
  --cm-table-border: 1px solid var(--cm-table-border-color);
  --cm-table-text-color: var(--cm-text-color-regular);
  --cm-table-header-text-color: var(--cm-text-color-secondary);
  --cm-table-row-hover-bg-color: var(--cm-fill-color-light);
  --cm-table-current-row-bg-color: var(--cm-color-primary-light-9);
  --cm-table-header-bg-color: var(--cm-bg-color);
  --cm-table-fixed-box-shadow: var(--cm-box-shadow-light);
  --cm-table-bg-color: var(--cm-fill-color-blank);
  --cm-table-tr-bg-color: var(--cm-fill-color-blank);
  --cm-table-expanded-cell-bg-color: var(--cm-fill-color-blank);
  --cm-table-fixed-left-column: inset 10px 0 10px -10px rgba(0, 0, 0, 0.15);
  --cm-table-fixed-right-column: inset -10px 0 10px -10px rgba(0, 0, 0, 0.15);
}

.cm-table-v2 {
  font-size: 14px;
}

.cm-table-v2 * {
  box-sizing: border-box;
}

.cm-table-v2__root {
  position: relative;
}

.cm-table-v2__root:hover .cm-table-v2__main .cm-virtual-scrollbar {
  opacity: 1;
}

.cm-table-v2__main {
  display: flex;
  flex-direction: column-reverse;
  position: absolute;
  overflow: hidden;
  top: 0;
  background-color: var(--cm-bg-color);
  left: 0;
}

.cm-table-v2__main .cm-vl__horizontal,
.cm-table-v2__main .cm-vl__vertical {
  z-index: 2;
}

.cm-table-v2__left {
  display: flex;
  flex-direction: column-reverse;
  position: absolute;
  overflow: hidden;
  top: 0;
  background-color: var(--cm-bg-color);
  left: 0;
  box-shadow: 2px 0 4px 0 rgba(0, 0, 0, 0.06);
}

.cm-table-v2__left .cm-virtual-scrollbar {
  opacity: 0;
}

.cm-table-v2__left .cm-vl__horizontal,
.cm-table-v2__left .cm-vl__vertical {
  z-index: -1;
}

.cm-table-v2__right {
  display: flex;
  flex-direction: column-reverse;
  position: absolute;
  overflow: hidden;
  top: 0;
  background-color: var(--cm-bg-color);
  right: 0;
  box-shadow: -2px 0 4px 0 rgba(0, 0, 0, 0.06);
}

.cm-table-v2__right .cm-virtual-scrollbar {
  opacity: 0;
}

.cm-table-v2__right .cm-vl__horizontal,
.cm-table-v2__right .cm-vl__vertical {
  z-index: -1;
}

.cm-table-v2__header-row {
  -webkit-padding-end: var(--cm-table-scrollbar-size);
  padding-inline-end: var(--cm-table-scrollbar-size);
}

.cm-table-v2__row {
  -webkit-padding-end: var(--cm-table-scrollbar-size);
  padding-inline-end: var(--cm-table-scrollbar-size);
}

.cm-table-v2__header-wrapper {
  overflow: hidden;
}

.cm-table-v2__header {
  position: relative;
  overflow: hidden;
}

.cm-table-v2__footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.cm-table-v2__empty {
  position: absolute;
  left: 0;
}

.cm-table-v2__overlay {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 9999;
}

.cm-table-v2__header-row {
  display: flex;
  border-bottom: var(--cm-table-border);
}

.cm-table-v2__header-cell {
  display: flex;
  align-items: center;
  padding: 0 8px;
  height: 100%;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  overflow: hidden;
  background-color: var(--cm-table-header-bg-color);
  color: var(--cm-table-header-text-color);
  font-weight: 700;
}

.cm-table-v2__header-cell.is-align-center {
  justify-content: center;
  text-align: center;
}

.cm-table-v2__header-cell.is-align-right {
  justify-content: flex-end;
  text-align: right;
}

.cm-table-v2__header-cell.is-sortable {
  cursor: pointer;
}

.cm-table-v2__header-cell:hover .cm-icon {
  display: block;
}

.cm-table-v2__sort-icon {
  transition: opacity, display var(--cm-transition-duration);
  opacity: 0.6;
  display: none;
}

.cm-table-v2__sort-icon.is-sorting {
  display: block;
  opacity: 1;
}

.cm-table-v2__row {
  border-bottom: var(--cm-table-border);
  display: flex;
  align-items: center;
  transition: background-color var(--cm-transition-duration);
}

.cm-table-v2__row.is-hovered {
  background-color: var(--cm-table-row-hover-bg-color);
}

.cm-table-v2__row:hover {
  background-color: var(--cm-table-row-hover-bg-color);
}

.cm-table-v2__row-cell {
  height: 100%;
  overflow: hidden;
  display: flex;
  align-items: center;
  padding: 0 8px;
}

.cm-table-v2__row-cell.is-align-center {
  justify-content: center;
  text-align: center;
}

.cm-table-v2__row-cell.is-align-right {
  justify-content: flex-end;
  text-align: right;
}

.cm-table-v2__expand-icon {
  margin: 0 4px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cm-table-v2__expand-icon svg {
  transition: transform var(--cm-transition-duration);
}

.cm-table-v2__expand-icon.is-expanded svg {
  transform: rotate(90deg);
}

.cm-table-v2:not(.is-dynamic) .cm-table-v2__cell-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cm-table-v2.is-dynamic .cm-table-v2__row {
  overflow: hidden;
  align-items: stretch;
}

.cm-table-v2.is-dynamic .cm-table-v2__row .cm-table-v2__row-cell {
  word-break: break-all;
}

.cm-tabs {
  --cm-tabs-header-height: 40px;
}

.cm-tabs__header {
  padding: 0;
  position: relative;
  margin: 0 0 15px;
}

.cm-tabs__active-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 2px;
  background-color: var(--cm-color-primary);
  z-index: 1;
  transition: width var(--cm-transition-duration) var(--cm-transition-function-ease-in-out-bezier), transform var(--cm-transition-duration) var(--cm-transition-function-ease-in-out-bezier);
  list-style: none;
}

.cm-tabs__new-tab {
  display: flex;
  align-items: center;
  justify-content: center;
  float: right;
  border: 1px solid var(--cm-border-color);
  height: 20px;
  width: 20px;
  line-height: 20px;
  margin: 10px 0 10px 10px;
  border-radius: 3px;
  text-align: center;
  font-size: 12px;
  color: var(--cm-text-color-primary);
  cursor: pointer;
  transition: all 0.15s;
}

.cm-tabs__new-tab .is-icon-plus {
  height: inherit;
  width: inherit;
  transform: scale(0.8, 0.8);
}

.cm-tabs__new-tab .is-icon-plus svg {
  vertical-align: middle;
}

.cm-tabs__new-tab:hover {
  color: var(--cm-color-primary);
}

.cm-tabs__nav-wrap {
  overflow: hidden;
  margin-bottom: -1px;
  position: relative;
}

.cm-tabs__nav-wrap::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: var(--cm-border-color-light);
  z-index: var(--cm-index-normal);
}

.cm-tabs__nav-wrap.is-scrollable {
  padding: 0 20px;
  box-sizing: border-box;
}

.cm-tabs__nav-scroll {
  overflow: hidden;
}

.cm-tabs__nav-next,
.cm-tabs__nav-prev {
  position: absolute;
  cursor: pointer;
  line-height: 44px;
  font-size: 12px;
  color: var(--cm-text-color-secondary);
  width: 20px;
  text-align: center;
}

.cm-tabs__nav-next {
  right: 0;
}

.cm-tabs__nav-prev {
  left: 0;
}

.cm-tabs__nav {
  display: flex;
  white-space: nowrap;
  position: relative;
  transition: transform var(--cm-transition-duration);
  float: left;
  z-index: calc(var(--cm-index-normal) + 1);
}

.cm-tabs__nav.is-stretch {
  min-width: 100%;
  display: flex;
}

.cm-tabs__nav.is-stretch > * {
  flex: 1;
  text-align: center;
}

.cm-tabs__item {
  padding: 0 20px;
  height: var(--cm-tabs-header-height);
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  list-style: none;
  font-size: var(--cm-font-size-base);
  font-weight: 500;
  color: var(--cm-text-color-primary);
  position: relative;
}

.cm-tabs__item:focus,
.cm-tabs__item:focus:active {
  outline: 0;
}

.cm-tabs__item:focus-visible {
  box-shadow: 0 0 2px 2px var(--cm-color-primary) inset;
  border-radius: 3px;
}

.cm-tabs__item .is-icon-close {
  border-radius: 50%;
  text-align: center;
  transition: all var(--cm-transition-duration) var(--cm-transition-function-ease-in-out-bezier);
  margin-left: 5px;
}

.cm-tabs__item .is-icon-close:before {
  transform: scale(0.9);
  display: inline-block;
}

.cm-tabs__item .is-icon-close:hover {
  background-color: var(--cm-text-color-placeholder);
  color: #fff;
}

.cm-tabs__item.is-active {
  color: var(--cm-color-primary);
}

.cm-tabs__item:hover {
  color: var(--cm-color-primary);
  cursor: pointer;
}

.cm-tabs__item.is-disabled {
  color: var(--cm-disabled-text-color);
  cursor: not-allowed;
}

.cm-tabs__content {
  overflow: hidden;
  position: relative;
}

.cm-tabs--card > .cm-tabs__header {
  border-bottom: 1px solid var(--cm-border-color-light);
  height: var(--cm-tabs-header-height);
}

.cm-tabs--card > .cm-tabs__header .cm-tabs__nav-wrap::after {
  content: none;
}

.cm-tabs--card > .cm-tabs__header .cm-tabs__nav {
  border: 1px solid var(--cm-border-color-light);
  border-bottom: none;
  border-radius: 4px 4px 0 0;
  box-sizing: border-box;
}

.cm-tabs--card > .cm-tabs__header .cm-tabs__active-bar {
  display: none;
}

.cm-tabs--card > .cm-tabs__header .cm-tabs__item .is-icon-close {
  position: relative;
  font-size: 12px;
  width: 0;
  height: 14px;
  overflow: hidden;
  right: -2px;
  transform-origin: 100% 50%;
}

.cm-tabs--card > .cm-tabs__header .cm-tabs__item {
  border-bottom: 1px solid transparent;
  border-left: 1px solid var(--cm-border-color-light);
  transition: color var(--cm-transition-duration) var(--cm-transition-function-ease-in-out-bezier), padding var(--cm-transition-duration) var(--cm-transition-function-ease-in-out-bezier);
}

.cm-tabs--card > .cm-tabs__header .cm-tabs__item:first-child {
  border-left: none;
}

.cm-tabs--card > .cm-tabs__header .cm-tabs__item.is-closable:hover {
  padding-left: 13px;
  padding-right: 13px;
}

.cm-tabs--card > .cm-tabs__header .cm-tabs__item.is-closable:hover .is-icon-close {
  width: 14px;
}

.cm-tabs--card > .cm-tabs__header .cm-tabs__item.is-active {
  border-bottom-color: var(--cm-bg-color);
}

.cm-tabs--card > .cm-tabs__header .cm-tabs__item.is-active.is-closable {
  padding-left: 20px;
  padding-right: 20px;
}

.cm-tabs--card > .cm-tabs__header .cm-tabs__item.is-active.is-closable .is-icon-close {
  width: 14px;
}

.cm-tabs--border-card {
  background: var(--cm-bg-color-overlay);
  border: 1px solid var(--cm-border-color);
}

.cm-tabs--border-card > .cm-tabs__content {
  padding: 15px;
}

.cm-tabs--border-card > .cm-tabs__header {
  background-color: var(--cm-fill-color-light);
  border-bottom: 1px solid var(--cm-border-color-light);
  margin: 0;
}

.cm-tabs--border-card > .cm-tabs__header .cm-tabs__nav-wrap::after {
  content: none;
}

.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item {
  transition: all var(--cm-transition-duration) var(--cm-transition-function-ease-in-out-bezier);
  border: 1px solid transparent;
  margin-top: -1px;
  color: var(--cm-text-color-secondary);
}

.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item:first-child {
  margin-left: -1px;
}

.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item + .cm-tabs__item {
  margin-left: -1px;
}

.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item.is-active {
  color: var(--cm-color-primary);
  background-color: var(--cm-bg-color-overlay);
  border-right-color: var(--cm-border-color);
  border-left-color: var(--cm-border-color);
}

.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item:not(.is-disabled):hover {
  color: var(--cm-color-primary);
}

.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item.is-disabled {
  color: var(--cm-disabled-text-color);
}

.cm-tabs--border-card > .cm-tabs__header .is-scrollable .cm-tabs__item:first-child {
  margin-left: 0;
}

.cm-tabs--bottom .cm-tabs__item.is-bottom:nth-child(2),
.cm-tabs--bottom .cm-tabs__item.is-top:nth-child(2),
.cm-tabs--top .cm-tabs__item.is-bottom:nth-child(2),
.cm-tabs--top .cm-tabs__item.is-top:nth-child(2) {
  padding-left: 0;
}

.cm-tabs--bottom .cm-tabs__item.is-bottom:last-child,
.cm-tabs--bottom .cm-tabs__item.is-top:last-child,
.cm-tabs--top .cm-tabs__item.is-bottom:last-child,
.cm-tabs--top .cm-tabs__item.is-top:last-child {
  padding-right: 0;
}

.cm-tabs--bottom .cm-tabs--left > .cm-tabs__header .cm-tabs__item:nth-child(2),
.cm-tabs--bottom .cm-tabs--right > .cm-tabs__header .cm-tabs__item:nth-child(2),
.cm-tabs--bottom.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item:nth-child(2),
.cm-tabs--bottom.cm-tabs--card > .cm-tabs__header .cm-tabs__item:nth-child(2),
.cm-tabs--top .cm-tabs--left > .cm-tabs__header .cm-tabs__item:nth-child(2),
.cm-tabs--top .cm-tabs--right > .cm-tabs__header .cm-tabs__item:nth-child(2),
.cm-tabs--top.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item:nth-child(2),
.cm-tabs--top.cm-tabs--card > .cm-tabs__header .cm-tabs__item:nth-child(2) {
  padding-left: 20px;
}

.cm-tabs--bottom .cm-tabs--left > .cm-tabs__header .cm-tabs__item:nth-child(2):not(.is-active).is-closable:hover,
.cm-tabs--bottom .cm-tabs--right > .cm-tabs__header .cm-tabs__item:nth-child(2):not(.is-active).is-closable:hover,
.cm-tabs--bottom.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item:nth-child(2):not(.is-active).is-closable:hover,
.cm-tabs--bottom.cm-tabs--card > .cm-tabs__header .cm-tabs__item:nth-child(2):not(.is-active).is-closable:hover,
.cm-tabs--top .cm-tabs--left > .cm-tabs__header .cm-tabs__item:nth-child(2):not(.is-active).is-closable:hover,
.cm-tabs--top .cm-tabs--right > .cm-tabs__header .cm-tabs__item:nth-child(2):not(.is-active).is-closable:hover,
.cm-tabs--top.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item:nth-child(2):not(.is-active).is-closable:hover,
.cm-tabs--top.cm-tabs--card > .cm-tabs__header .cm-tabs__item:nth-child(2):not(.is-active).is-closable:hover {
  padding-left: 13px;
}

.cm-tabs--bottom .cm-tabs--left > .cm-tabs__header .cm-tabs__item:last-child,
.cm-tabs--bottom .cm-tabs--right > .cm-tabs__header .cm-tabs__item:last-child,
.cm-tabs--bottom.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item:last-child,
.cm-tabs--bottom.cm-tabs--card > .cm-tabs__header .cm-tabs__item:last-child,
.cm-tabs--top .cm-tabs--left > .cm-tabs__header .cm-tabs__item:last-child,
.cm-tabs--top .cm-tabs--right > .cm-tabs__header .cm-tabs__item:last-child,
.cm-tabs--top.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item:last-child,
.cm-tabs--top.cm-tabs--card > .cm-tabs__header .cm-tabs__item:last-child {
  padding-right: 20px;
}

.cm-tabs--bottom .cm-tabs--left > .cm-tabs__header .cm-tabs__item:last-child:not(.is-active).is-closable:hover,
.cm-tabs--bottom .cm-tabs--right > .cm-tabs__header .cm-tabs__item:last-child:not(.is-active).is-closable:hover,
.cm-tabs--bottom.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item:last-child:not(.is-active).is-closable:hover,
.cm-tabs--bottom.cm-tabs--card > .cm-tabs__header .cm-tabs__item:last-child:not(.is-active).is-closable:hover,
.cm-tabs--top .cm-tabs--left > .cm-tabs__header .cm-tabs__item:last-child:not(.is-active).is-closable:hover,
.cm-tabs--top .cm-tabs--right > .cm-tabs__header .cm-tabs__item:last-child:not(.is-active).is-closable:hover,
.cm-tabs--top.cm-tabs--border-card > .cm-tabs__header .cm-tabs__item:last-child:not(.is-active).is-closable:hover,
.cm-tabs--top.cm-tabs--card > .cm-tabs__header .cm-tabs__item:last-child:not(.is-active).is-closable:hover {
  padding-right: 13px;
}

.cm-tabs--bottom .cm-tabs__header.is-bottom {
  margin-bottom: 0;
  margin-top: 10px;
}

.cm-tabs--bottom.cm-tabs--border-card .cm-tabs__header.is-bottom {
  border-bottom: 0;
  border-top: 1px solid var(--cm-border-color);
}

.cm-tabs--bottom.cm-tabs--border-card .cm-tabs__nav-wrap.is-bottom {
  margin-top: -1px;
  margin-bottom: 0;
}

.cm-tabs--bottom.cm-tabs--border-card .cm-tabs__item.is-bottom:not(.is-active) {
  border: 1px solid transparent;
}

.cm-tabs--bottom.cm-tabs--border-card .cm-tabs__item.is-bottom {
  margin: 0 -1px -1px;
}

.cm-tabs--left,
.cm-tabs--right {
  overflow: hidden;
}

.cm-tabs--left .cm-tabs__header.is-left,
.cm-tabs--left .cm-tabs__header.is-right,
.cm-tabs--left .cm-tabs__nav-scroll,
.cm-tabs--left .cm-tabs__nav-wrap.is-left,
.cm-tabs--left .cm-tabs__nav-wrap.is-right,
.cm-tabs--right .cm-tabs__header.is-left,
.cm-tabs--right .cm-tabs__header.is-right,
.cm-tabs--right .cm-tabs__nav-scroll,
.cm-tabs--right .cm-tabs__nav-wrap.is-left,
.cm-tabs--right .cm-tabs__nav-wrap.is-right {
  height: 100%;
}

.cm-tabs--left .cm-tabs__active-bar.is-left,
.cm-tabs--left .cm-tabs__active-bar.is-right,
.cm-tabs--right .cm-tabs__active-bar.is-left,
.cm-tabs--right .cm-tabs__active-bar.is-right {
  top: 0;
  bottom: auto;
  width: 2px;
  height: auto;
}

.cm-tabs--left .cm-tabs__nav-wrap.is-left,
.cm-tabs--left .cm-tabs__nav-wrap.is-right,
.cm-tabs--right .cm-tabs__nav-wrap.is-left,
.cm-tabs--right .cm-tabs__nav-wrap.is-right {
  margin-bottom: 0;
}

.cm-tabs--left .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-next,
.cm-tabs--left .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-prev,
.cm-tabs--left .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-next,
.cm-tabs--left .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-prev,
.cm-tabs--right .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-next,
.cm-tabs--right .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-prev,
.cm-tabs--right .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-next,
.cm-tabs--right .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-prev {
  height: 30px;
  line-height: 30px;
  width: 100%;
  text-align: center;
  cursor: pointer;
}

.cm-tabs--left .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-next i,
.cm-tabs--left .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-prev i,
.cm-tabs--left .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-next i,
.cm-tabs--left .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-prev i,
.cm-tabs--right .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-next i,
.cm-tabs--right .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-prev i,
.cm-tabs--right .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-next i,
.cm-tabs--right .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-prev i {
  transform: rotateZ(90deg);
}

.cm-tabs--left .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-prev,
.cm-tabs--left .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-prev,
.cm-tabs--right .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-prev,
.cm-tabs--right .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-prev {
  left: auto;
  top: 0;
}

.cm-tabs--left .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-next,
.cm-tabs--left .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-next,
.cm-tabs--right .cm-tabs__nav-wrap.is-left > .cm-tabs__nav-next,
.cm-tabs--right .cm-tabs__nav-wrap.is-right > .cm-tabs__nav-next {
  right: auto;
  bottom: 0;
}

.cm-tabs--left .cm-tabs__nav-wrap.is-left.is-scrollable,
.cm-tabs--left .cm-tabs__nav-wrap.is-right.is-scrollable,
.cm-tabs--right .cm-tabs__nav-wrap.is-left.is-scrollable,
.cm-tabs--right .cm-tabs__nav-wrap.is-right.is-scrollable {
  padding: 30px 0;
}

.cm-tabs--left .cm-tabs__nav-wrap.is-left::after,
.cm-tabs--left .cm-tabs__nav-wrap.is-right::after,
.cm-tabs--right .cm-tabs__nav-wrap.is-left::after,
.cm-tabs--right .cm-tabs__nav-wrap.is-right::after {
  height: 100%;
  width: 2px;
  bottom: auto;
  top: 0;
}

.cm-tabs--left .cm-tabs__nav.is-left,
.cm-tabs--left .cm-tabs__nav.is-right,
.cm-tabs--right .cm-tabs__nav.is-left,
.cm-tabs--right .cm-tabs__nav.is-right {
  flex-direction: column;
}

.cm-tabs--left .cm-tabs__item.is-left,
.cm-tabs--right .cm-tabs__item.is-left {
  justify-content: flex-end;
}

.cm-tabs--left .cm-tabs__item.is-right,
.cm-tabs--right .cm-tabs__item.is-right {
  justify-content: flex-start;
}

.cm-tabs--left .cm-tabs__header.is-left {
  float: left;
  margin-bottom: 0;
  margin-right: 10px;
}

.cm-tabs--left .cm-tabs__nav-wrap.is-left {
  margin-right: -1px;
}

.cm-tabs--left .cm-tabs__nav-wrap.is-left::after {
  left: auto;
  right: 0;
}

.cm-tabs--left .cm-tabs__active-bar.is-left {
  right: 0;
  left: auto;
}

.cm-tabs--left .cm-tabs__item.is-left {
  text-align: right;
}

.cm-tabs--left.cm-tabs--card .cm-tabs__active-bar.is-left {
  display: none;
}

.cm-tabs--left.cm-tabs--card .cm-tabs__item.is-left {
  border-left: none;
  border-right: 1px solid var(--cm-border-color-light);
  border-bottom: none;
  border-top: 1px solid var(--cm-border-color-light);
  text-align: left;
}

.cm-tabs--left.cm-tabs--card .cm-tabs__item.is-left:first-child {
  border-right: 1px solid var(--cm-border-color-light);
  border-top: none;
}

.cm-tabs--left.cm-tabs--card .cm-tabs__item.is-left.is-active {
  border: 1px solid var(--cm-border-color-light);
  border-right-color: #fff;
  border-left: none;
  border-bottom: none;
}

.cm-tabs--left.cm-tabs--card .cm-tabs__item.is-left.is-active:first-child {
  border-top: none;
}

.cm-tabs--left.cm-tabs--card .cm-tabs__item.is-left.is-active:last-child {
  border-bottom: none;
}

.cm-tabs--left.cm-tabs--card .cm-tabs__nav {
  border-radius: 4px 0 0 4px;
  border-bottom: 1px solid var(--cm-border-color-light);
  border-right: none;
}

.cm-tabs--left.cm-tabs--card .cm-tabs__new-tab {
  float: none;
}

.cm-tabs--left.cm-tabs--border-card .cm-tabs__header.is-left {
  border-right: 1px solid var(--cm-border-color);
}

.cm-tabs--left.cm-tabs--border-card .cm-tabs__item.is-left {
  border: 1px solid transparent;
  margin: -1px 0 -1px -1px;
}

.cm-tabs--left.cm-tabs--border-card .cm-tabs__item.is-left.is-active {
  border-color: transparent;
  border-top-color: #d1dbe5;
  border-bottom-color: #d1dbe5;
}

.cm-tabs--right .cm-tabs__header.is-right {
  float: right;
  margin-bottom: 0;
  margin-left: 10px;
}

.cm-tabs--right .cm-tabs__nav-wrap.is-right {
  margin-left: -1px;
}

.cm-tabs--right .cm-tabs__nav-wrap.is-right::after {
  left: 0;
  right: auto;
}

.cm-tabs--right .cm-tabs__active-bar.is-right {
  left: 0;
}

.cm-tabs--right.cm-tabs--card .cm-tabs__active-bar.is-right {
  display: none;
}

.cm-tabs--right.cm-tabs--card .cm-tabs__item.is-right {
  border-bottom: none;
  border-top: 1px solid var(--cm-border-color-light);
}

.cm-tabs--right.cm-tabs--card .cm-tabs__item.is-right:first-child {
  border-left: 1px solid var(--cm-border-color-light);
  border-top: none;
}

.cm-tabs--right.cm-tabs--card .cm-tabs__item.is-right.is-active {
  border: 1px solid var(--cm-border-color-light);
  border-left-color: #fff;
  border-right: none;
  border-bottom: none;
}

.cm-tabs--right.cm-tabs--card .cm-tabs__item.is-right.is-active:first-child {
  border-top: none;
}

.cm-tabs--right.cm-tabs--card .cm-tabs__item.is-right.is-active:last-child {
  border-bottom: none;
}

.cm-tabs--right.cm-tabs--card .cm-tabs__nav {
  border-radius: 0 4px 4px 0;
  border-bottom: 1px solid var(--cm-border-color-light);
  border-left: none;
}

.cm-tabs--right.cm-tabs--border-card .cm-tabs__header.is-right {
  border-left: 1px solid var(--cm-border-color);
}

.cm-tabs--right.cm-tabs--border-card .cm-tabs__item.is-right {
  border: 1px solid transparent;
  margin: -1px -1px -1px 0;
}

.cm-tabs--right.cm-tabs--border-card .cm-tabs__item.is-right.is-active {
  border-color: transparent;
  border-top-color: #d1dbe5;
  border-bottom-color: #d1dbe5;
}

.slideInLeft-transition,
.slideInRight-transition {
  display: inline-block;
}

.slideInRight-enter {
  -webkit-animation: slideInRight-enter var(--cm-transition-duration);
  animation: slideInRight-enter var(--cm-transition-duration);
}

.slideInRight-leave {
  position: absolute;
  left: 0;
  right: 0;
  -webkit-animation: slideInRight-leave var(--cm-transition-duration);
  animation: slideInRight-leave var(--cm-transition-duration);
}

.slideInLeft-enter {
  -webkit-animation: slideInLeft-enter var(--cm-transition-duration);
  animation: slideInLeft-enter var(--cm-transition-duration);
}

.slideInLeft-leave {
  position: absolute;
  left: 0;
  right: 0;
  -webkit-animation: slideInLeft-leave var(--cm-transition-duration);
  animation: slideInLeft-leave var(--cm-transition-duration);
}

@-webkit-keyframes slideInRight-enter {
  0% {
    opacity: 0;
    transform-origin: 0 0;
    transform: translateX(100%);
  }
  to {
    opacity: 1;
    transform-origin: 0 0;
    transform: translateX(0);
  }
}
@keyframes slideInRight-enter {
  0% {
    opacity: 0;
    transform-origin: 0 0;
    transform: translateX(100%);
  }
  to {
    opacity: 1;
    transform-origin: 0 0;
    transform: translateX(0);
  }
}
@-webkit-keyframes slideInRight-leave {
  0% {
    transform-origin: 0 0;
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform-origin: 0 0;
    transform: translateX(100%);
    opacity: 0;
  }
}
@keyframes slideInRight-leave {
  0% {
    transform-origin: 0 0;
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform-origin: 0 0;
    transform: translateX(100%);
    opacity: 0;
  }
}
@-webkit-keyframes slideInLeft-enter {
  0% {
    opacity: 0;
    transform-origin: 0 0;
    transform: translateX(-100%);
  }
  to {
    opacity: 1;
    transform-origin: 0 0;
    transform: translateX(0);
  }
}
@keyframes slideInLeft-enter {
  0% {
    opacity: 0;
    transform-origin: 0 0;
    transform: translateX(-100%);
  }
  to {
    opacity: 1;
    transform-origin: 0 0;
    transform: translateX(0);
  }
}
@-webkit-keyframes slideInLeft-leave {
  0% {
    transform-origin: 0 0;
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform-origin: 0 0;
    transform: translateX(-100%);
    opacity: 0;
  }
}
@keyframes slideInLeft-leave {
  0% {
    transform-origin: 0 0;
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform-origin: 0 0;
    transform: translateX(-100%);
    opacity: 0;
  }
}
.cm-tag {
  --cm-tag-font-size: 12px;
  --cm-tag-border-radius: 4px;
  --cm-tag-border-radius-rounded: 9999px;
}

.cm-tag {
  --cm-tag-bg-color: var(--cm-color-primary-light-9);
  --cm-tag-border-color: var(--cm-color-primary-light-8);
  --cm-tag-hover-color: var(--cm-color-primary);
  --cm-tag-text-color: var(--cm-color-primary);
  background-color: var(--cm-tag-bg-color);
  border-color: var(--cm-tag-border-color);
  color: var(--cm-tag-text-color);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  vertical-align: middle;
  height: 24px;
  padding: 0 9px;
  font-size: var(--cm-tag-font-size);
  line-height: 1;
  border-width: 1px;
  border-style: solid;
  border-radius: var(--cm-tag-border-radius);
  box-sizing: border-box;
  white-space: nowrap;
  --cm-icon-size: 14px;
}

.cm-tag.cm-tag--primary {
  --cm-tag-bg-color: var(--cm-color-primary-light-9);
  --cm-tag-border-color: var(--cm-color-primary-light-8);
  --cm-tag-hover-color: var(--cm-color-primary);
}

.cm-tag.cm-tag--success {
  --cm-tag-bg-color: var(--cm-color-success-light-9);
  --cm-tag-border-color: var(--cm-color-success-light-8);
  --cm-tag-hover-color: var(--cm-color-success);
}

.cm-tag.cm-tag--warning {
  --cm-tag-bg-color: var(--cm-color-warning-light-9);
  --cm-tag-border-color: var(--cm-color-warning-light-8);
  --cm-tag-hover-color: var(--cm-color-warning);
}

.cm-tag.cm-tag--danger {
  --cm-tag-bg-color: var(--cm-color-danger-light-9);
  --cm-tag-border-color: var(--cm-color-danger-light-8);
  --cm-tag-hover-color: var(--cm-color-danger);
}

.cm-tag.cm-tag--error {
  --cm-tag-bg-color: var(--cm-color-error-light-9);
  --cm-tag-border-color: var(--cm-color-error-light-8);
  --cm-tag-hover-color: var(--cm-color-error);
}

.cm-tag.cm-tag--info {
  --cm-tag-bg-color: var(--cm-color-info-light-9);
  --cm-tag-border-color: var(--cm-color-info-light-8);
  --cm-tag-hover-color: var(--cm-color-info);
}

.cm-tag.cm-tag--primary {
  --cm-tag-text-color: var(--cm-color-primary);
}

.cm-tag.cm-tag--success {
  --cm-tag-text-color: var(--cm-color-success);
}

.cm-tag.cm-tag--warning {
  --cm-tag-text-color: var(--cm-color-warning);
}

.cm-tag.cm-tag--danger {
  --cm-tag-text-color: var(--cm-color-danger);
}

.cm-tag.cm-tag--error {
  --cm-tag-text-color: var(--cm-color-error);
}

.cm-tag.cm-tag--info {
  --cm-tag-text-color: var(--cm-color-info);
}

.cm-tag.is-hit {
  border-color: var(--cm-color-primary);
}

.cm-tag.is-round {
  border-radius: var(--cm-tag-border-radius-rounded);
}

.cm-tag .cm-tag__close {
  color: var(--cm-tag-text-color);
}

.cm-tag .cm-tag__close:hover {
  color: var(--cm-color-white);
  background-color: var(--cm-tag-hover-color);
}

.cm-tag .cm-icon {
  border-radius: 50%;
  cursor: pointer;
  font-size: calc(var(--cm-icon-size) - 2px);
  height: var(--cm-icon-size);
  width: var(--cm-icon-size);
}

.cm-tag .cm-tag__close {
  margin-left: 6px;
}

.cm-tag--dark {
  --cm-tag-bg-color: var(--cm-color-primary);
  --cm-tag-border-color: var(--cm-color-primary);
  --cm-tag-hover-color: var(--cm-color-primary-light-3);
  --cm-tag-text-color: var(--cm-color-white);
  --cm-tag-text-color: var(--cm-color-white);
}

.cm-tag--dark.cm-tag--primary {
  --cm-tag-bg-color: var(--cm-color-primary);
  --cm-tag-border-color: var(--cm-color-primary);
  --cm-tag-hover-color: var(--cm-color-primary-light-3);
}

.cm-tag--dark.cm-tag--success {
  --cm-tag-bg-color: var(--cm-color-success);
  --cm-tag-border-color: var(--cm-color-success);
  --cm-tag-hover-color: var(--cm-color-success-light-3);
}

.cm-tag--dark.cm-tag--warning {
  --cm-tag-bg-color: var(--cm-color-warning);
  --cm-tag-border-color: var(--cm-color-warning);
  --cm-tag-hover-color: var(--cm-color-warning-light-3);
}

.cm-tag--dark.cm-tag--danger {
  --cm-tag-bg-color: var(--cm-color-danger);
  --cm-tag-border-color: var(--cm-color-danger);
  --cm-tag-hover-color: var(--cm-color-danger-light-3);
}

.cm-tag--dark.cm-tag--error {
  --cm-tag-bg-color: var(--cm-color-error);
  --cm-tag-border-color: var(--cm-color-error);
  --cm-tag-hover-color: var(--cm-color-error-light-3);
}

.cm-tag--dark.cm-tag--info {
  --cm-tag-bg-color: var(--cm-color-info);
  --cm-tag-border-color: var(--cm-color-info);
  --cm-tag-hover-color: var(--cm-color-info-light-3);
}

.cm-tag--dark.cm-tag--primary {
  --cm-tag-text-color: var(--cm-color-white);
}

.cm-tag--dark.cm-tag--success {
  --cm-tag-text-color: var(--cm-color-white);
}

.cm-tag--dark.cm-tag--warning {
  --cm-tag-text-color: var(--cm-color-white);
}

.cm-tag--dark.cm-tag--danger {
  --cm-tag-text-color: var(--cm-color-white);
}

.cm-tag--dark.cm-tag--error {
  --cm-tag-text-color: var(--cm-color-white);
}

.cm-tag--dark.cm-tag--info {
  --cm-tag-text-color: var(--cm-color-white);
}

.cm-tag--plain {
  --cm-tag-bg-color: var(--cm-fill-color-blank);
  --cm-tag-border-color: var(--cm-color-primary-light-5);
  --cm-tag-hover-color: var(--cm-color-primary);
  --cm-tag-bg-color: var(--cm-fill-color-blank);
}

.cm-tag--plain.cm-tag--primary {
  --cm-tag-bg-color: var(--cm-fill-color-blank);
  --cm-tag-border-color: var(--cm-color-primary-light-5);
  --cm-tag-hover-color: var(--cm-color-primary);
}

.cm-tag--plain.cm-tag--success {
  --cm-tag-bg-color: var(--cm-fill-color-blank);
  --cm-tag-border-color: var(--cm-color-success-light-5);
  --cm-tag-hover-color: var(--cm-color-success);
}

.cm-tag--plain.cm-tag--warning {
  --cm-tag-bg-color: var(--cm-fill-color-blank);
  --cm-tag-border-color: var(--cm-color-warning-light-5);
  --cm-tag-hover-color: var(--cm-color-warning);
}

.cm-tag--plain.cm-tag--danger {
  --cm-tag-bg-color: var(--cm-fill-color-blank);
  --cm-tag-border-color: var(--cm-color-danger-light-5);
  --cm-tag-hover-color: var(--cm-color-danger);
}

.cm-tag--plain.cm-tag--error {
  --cm-tag-bg-color: var(--cm-fill-color-blank);
  --cm-tag-border-color: var(--cm-color-error-light-5);
  --cm-tag-hover-color: var(--cm-color-error);
}

.cm-tag--plain.cm-tag--info {
  --cm-tag-bg-color: var(--cm-fill-color-blank);
  --cm-tag-border-color: var(--cm-color-info-light-5);
  --cm-tag-hover-color: var(--cm-color-info);
}

.cm-tag.is-closable {
  padding-right: 5px;
}

.cm-tag--large {
  padding: 0 11px;
  height: 32px;
  --cm-icon-size: 16px;
}

.cm-tag--large .cm-tag__close {
  margin-left: 8px;
}

.cm-tag--large.is-closable {
  padding-right: 7px;
}

.cm-tag--small {
  padding: 0 7px;
  height: 20px;
  --cm-icon-size: 12px;
}

.cm-tag--small .cm-tag__close {
  margin-left: 4px;
}

.cm-tag--small.is-closable {
  padding-right: 3px;
}

.cm-tag--small .cm-icon-close {
  transform: scale(0.8);
}

.cm-tag.cm-tag--primary.is-hit {
  border-color: var(--cm-color-primary);
}

.cm-tag.cm-tag--success.is-hit {
  border-color: var(--cm-color-success);
}

.cm-tag.cm-tag--warning.is-hit {
  border-color: var(--cm-color-warning);
}

.cm-tag.cm-tag--danger.is-hit {
  border-color: var(--cm-color-danger);
}

.cm-tag.cm-tag--error.is-hit {
  border-color: var(--cm-color-error);
}

.cm-tag.cm-tag--info.is-hit {
  border-color: var(--cm-color-info);
}

.cm-text {
  --cm-text-font-size: var(--cm-font-size-base);
  --cm-text-color: var(--cm-text-color-regular);
}

.cm-text {
  align-self: center;
  margin: 0;
  padding: 0;
  font-size: var(--cm-text-font-size);
  color: var(--cm-text-color);
  word-break: break-all;
}

.cm-text.is-truncated {
  display: inline-block;
  max-width: 100%;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.cm-text--large {
  --cm-text-font-size: var(--cm-font-size-medium);
}

.cm-text--default {
  --cm-text-font-size: var(--cm-font-size-base);
}

.cm-text--small {
  --cm-text-font-size: var(--cm-font-size-extra-small);
}

.cm-text.cm-text--primary {
  --cm-text-color: var(--cm-color-primary);
}

.cm-text.cm-text--success {
  --cm-text-color: var(--cm-color-success);
}

.cm-text.cm-text--warning {
  --cm-text-color: var(--cm-color-warning);
}

.cm-text.cm-text--danger {
  --cm-text-color: var(--cm-color-danger);
}

.cm-text.cm-text--error {
  --cm-text-color: var(--cm-color-error);
}

.cm-text.cm-text--info {
  --cm-text-color: var(--cm-color-info);
}

.cm-text > .cm-icon {
  vertical-align: -2px;
}

.time-select {
  margin: 5px 0;
  min-width: 0;
}

.time-select .cm-picker-panel__content {
  max-height: 200px;
  margin: 0;
}

.time-select-item {
  padding: 8px 10px;
  font-size: 14px;
  line-height: 20px;
}

.time-select-item.disabled {
  color: var(--cm-datepicker-border-color);
  cursor: not-allowed;
}

.time-select-item:hover {
  background-color: var(--cm-fill-color-light);
  font-weight: 700;
  cursor: pointer;
}

.time-select .time-select-item.selected:not(.disabled) {
  color: var(--cm-color-primary);
  font-weight: 700;
}

.cm-timeline-item {
  position: relative;
  padding-bottom: 20px;
}

.cm-timeline-item__wrapper {
  position: relative;
  padding-left: 28px;
  top: -3px;
}

.cm-timeline-item__tail {
  position: absolute;
  left: 4px;
  height: 100%;
  border-left: 2px solid var(--cm-timeline-node-color);
}

.cm-timeline-item .cm-timeline-item__icon {
  color: var(--cm-color-white);
  font-size: var(--cm-font-size-small);
}

.cm-timeline-item__node {
  position: absolute;
  background-color: var(--cm-timeline-node-color);
  border-color: var(--cm-timeline-node-color);
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
}

.cm-timeline-item__node--normal {
  left: -1px;
  width: var(--cm-timeline-node-size-normal);
  height: var(--cm-timeline-node-size-normal);
}

.cm-timeline-item__node--large {
  left: -2px;
  width: var(--cm-timeline-node-size-large);
  height: var(--cm-timeline-node-size-large);
}

.cm-timeline-item__node.is-hollow {
  background: var(--cm-color-white);
  border-style: solid;
  border-width: 2px;
}

.cm-timeline-item__node--primary {
  background-color: var(--cm-color-primary);
  border-color: var(--cm-color-primary);
}

.cm-timeline-item__node--success {
  background-color: var(--cm-color-success);
  border-color: var(--cm-color-success);
}

.cm-timeline-item__node--warning {
  background-color: var(--cm-color-warning);
  border-color: var(--cm-color-warning);
}

.cm-timeline-item__node--danger {
  background-color: var(--cm-color-danger);
  border-color: var(--cm-color-danger);
}

.cm-timeline-item__node--info {
  background-color: var(--cm-color-info);
  border-color: var(--cm-color-info);
}

.cm-timeline-item__dot {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
}

.cm-timeline-item__content {
  color: var(--cm-text-color-primary);
}

.cm-timeline-item__timestamp {
  color: var(--cm-text-color-secondary);
  line-height: 1;
  font-size: var(--cm-font-size-small);
}

.cm-timeline-item__timestamp.is-top {
  margin-bottom: 8px;
  padding-top: 4px;
}

.cm-timeline-item__timestamp.is-bottom {
  margin-top: 8px;
}

.cm-timeline {
  --cm-timeline-node-size-normal: 12px;
  --cm-timeline-node-size-large: 14px;
  --cm-timeline-node-color: var(--cm-border-color-light);
}

.cm-timeline {
  margin: 0;
  font-size: var(--cm-font-size-base);
  list-style: none;
}

.cm-timeline .cm-timeline-item:last-child .cm-timeline-item__tail {
  display: none;
}

.cm-timeline .cm-timeline-item__center {
  display: flex;
  align-items: center;
}

.cm-timeline .cm-timeline-item__center .cm-timeline-item__wrapper {
  width: 100%;
}

.cm-timeline .cm-timeline-item__center .cm-timeline-item__tail {
  top: 0;
}

.cm-timeline .cm-timeline-item__center:first-child .cm-timeline-item__tail {
  height: calc(50% + 10px);
  top: calc(50% - 10px);
}

.cm-timeline .cm-timeline-item__center:last-child .cm-timeline-item__tail {
  display: block;
  height: calc(50% - 10px);
}

.cm-tooltip-v2__content {
  --cm-tooltip-v2-padding: 5px 10px;
  --cm-tooltip-v2-border-radius: 4px;
  --cm-tooltip-v2-border-color: var(--cm-border-color);
  border-radius: var(--cm-tooltip-v2-border-radius);
  color: var(--cm-color-black);
  background-color: var(--cm-color-white);
  padding: var(--cm-tooltip-v2-padding);
  border: 1px solid var(--cm-border-color);
}

.cm-tooltip-v2__arrow {
  position: absolute;
  color: var(--cm-color-white);
  width: var(--cm-tooltip-v2-arrow-width);
  height: var(--cm-tooltip-v2-arrow-height);
  pointer-events: none;
  left: var(--cm-tooltip-v2-arrow-x);
  top: var(--cm-tooltip-v2-arrow-y);
}

.cm-tooltip-v2__arrow::before {
  content: "";
  width: 0;
  height: 0;
  border: var(--cm-tooltip-v2-arrow-border-width) solid transparent;
  position: absolute;
}

.cm-tooltip-v2__arrow::after {
  content: "";
  width: 0;
  height: 0;
  border: var(--cm-tooltip-v2-arrow-border-width) solid transparent;
  position: absolute;
}

.cm-tooltip-v2__content[data-side^=top] .cm-tooltip-v2__arrow {
  bottom: 0;
}

.cm-tooltip-v2__content[data-side^=top] .cm-tooltip-v2__arrow::before {
  border-top-color: var(--cm-color-white);
  border-top-width: var(--cm-tooltip-v2-arrow-border-width);
  border-bottom: 0;
  top: calc(100% - 1px);
}

.cm-tooltip-v2__content[data-side^=top] .cm-tooltip-v2__arrow::after {
  border-top-color: var(--cm-border-color);
  border-top-width: var(--cm-tooltip-v2-arrow-border-width);
  border-bottom: 0;
  top: 100%;
  z-index: -1;
}

.cm-tooltip-v2__content[data-side^=bottom] .cm-tooltip-v2__arrow {
  top: 0;
}

.cm-tooltip-v2__content[data-side^=bottom] .cm-tooltip-v2__arrow::before {
  border-bottom-color: var(--cm-color-white);
  border-bottom-width: var(--cm-tooltip-v2-arrow-border-width);
  border-top: 0;
  bottom: calc(100% - 1px);
}

.cm-tooltip-v2__content[data-side^=bottom] .cm-tooltip-v2__arrow::after {
  border-bottom-color: var(--cm-border-color);
  border-bottom-width: var(--cm-tooltip-v2-arrow-border-width);
  border-top: 0;
  bottom: 100%;
  z-index: -1;
}

.cm-tooltip-v2__content[data-side^=left] .cm-tooltip-v2__arrow {
  right: 0;
}

.cm-tooltip-v2__content[data-side^=left] .cm-tooltip-v2__arrow::before {
  border-left-color: var(--cm-color-white);
  border-left-width: var(--cm-tooltip-v2-arrow-border-width);
  border-right: 0;
  left: calc(100% - 1px);
}

.cm-tooltip-v2__content[data-side^=left] .cm-tooltip-v2__arrow::after {
  border-left-color: var(--cm-border-color);
  border-left-width: var(--cm-tooltip-v2-arrow-border-width);
  border-right: 0;
  left: 100%;
  z-index: -1;
}

.cm-tooltip-v2__content[data-side^=right] .cm-tooltip-v2__arrow {
  left: 0;
}

.cm-tooltip-v2__content[data-side^=right] .cm-tooltip-v2__arrow::before {
  border-right-color: var(--cm-color-white);
  border-right-width: var(--cm-tooltip-v2-arrow-border-width);
  border-left: 0;
  right: calc(100% - 1px);
}

.cm-tooltip-v2__content[data-side^=right] .cm-tooltip-v2__arrow::after {
  border-right-color: var(--cm-border-color);
  border-right-width: var(--cm-tooltip-v2-arrow-border-width);
  border-left: 0;
  right: 100%;
  z-index: -1;
}

.cm-tooltip-v2__content.is-dark {
  --cm-tooltip-v2-border-color: transparent;
  background-color: var(--cm-color-black);
  color: var(--cm-color-white);
  border-color: transparent;
}

.cm-tooltip-v2__content.is-dark .cm-tooltip-v2__arrow {
  background-color: var(--cm-color-black);
  border-color: transparent;
}

.cm-transfer {
  --cm-transfer-border-color: var(--cm-border-color-lighter);
  --cm-transfer-border-radius: var(--cm-border-radius-base);
  --cm-transfer-pancm-width: 200px;
  --cm-transfer-pancm-header-height: 40px;
  --cm-transfer-pancm-header-bg-color: var(--cm-fill-color-light);
  --cm-transfer-pancm-footer-height: 40px;
  --cm-transfer-pancm-body-height: 278px;
  --cm-transfer-item-height: 30px;
  --cm-transfer-filter-height: 32px;
}

.cm-transfer {
  font-size: var(--cm-font-size-base);
}

.cm-transfer__buttons {
  display: inline-block;
  vertical-align: middle;
  padding: 0 30px;
}

.cm-transfer__button {
  vertical-align: top;
}

.cm-transfer__button:nth-child(2) {
  margin: 0 0 0 10px;
}

.cm-transfer__button i,
.cm-transfer__button span {
  font-size: 14px;
}

.cm-transfer__button .cm-icon + span {
  margin-left: 0;
}

.cm-transfer-panel {
  overflow: hidden;
  background: var(--cm-bg-color-overlay);
  display: inline-block;
  text-align: left;
  vertical-align: middle;
  width: var(--cm-transfer-pancm-width);
  max-height: 100%;
  box-sizing: border-box;
  position: relative;
}

.cm-transfer-panel__body {
  height: var(--cm-transfer-pancm-body-height);
  border-left: 1px solid var(--cm-transfer-border-color);
  border-right: 1px solid var(--cm-transfer-border-color);
  border-bottom: 1px solid var(--cm-transfer-border-color);
  border-bottom-left-radius: var(--cm-transfer-border-radius);
  border-bottom-right-radius: var(--cm-transfer-border-radius);
  overflow: hidden;
}

.cm-transfer-panel__body.is-with-footer {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.cm-transfer-panel__list {
  margin: 0;
  padding: 6px 0;
  list-style: none;
  height: var(--cm-transfer-pancm-body-height);
  overflow: auto;
  box-sizing: border-box;
}

.cm-transfer-panel__list.is-filterable {
  height: calc(100% - var(--cm-transfer-filter-height) - 30px);
  padding-top: 0;
}

.cm-transfer-panel__item {
  height: var(--cm-transfer-item-height);
  line-height: var(--cm-transfer-item-height);
  padding-left: 15px;
  display: block !important;
}

.cm-transfer-panel__item + .cm-transfer-panel__item {
  margin-left: 0;
}

.cm-transfer-panel__item.cm-checkbox {
  color: var(--cm-text-color-regular);
}

.cm-transfer-panel__item:hover {
  color: var(--cm-color-primary);
}

.cm-transfer-panel__item.cm-checkbox .cm-checkbox__label {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  box-sizing: border-box;
  padding-left: 22px;
  line-height: var(--cm-transfer-item-height);
}

.cm-transfer-panel__item .cm-checkbox__input {
  position: absolute;
  top: 8px;
}

.cm-transfer-panel__filter {
  text-align: center;
  padding: 15px;
  box-sizing: border-box;
}

.cm-transfer-panel__filter .cm-input__inner {
  height: var(--cm-transfer-filter-height);
  width: 100%;
  font-size: 12px;
  display: inline-block;
  box-sizing: border-box;
  border-radius: calc(var(--cm-transfer-filter-height) / 2);
}

.cm-transfer-panel__filter .cm-icon-circle-close {
  cursor: pointer;
}

.cm-transfer-panel .cm-transfer-panel__header {
  display: flex;
  align-items: center;
  height: var(--cm-transfer-pancm-header-height);
  background: var(--cm-transfer-pancm-header-bg-color);
  margin: 0;
  padding-left: 15px;
  border: 1px solid var(--cm-transfer-border-color);
  border-top-left-radius: var(--cm-transfer-border-radius);
  border-top-right-radius: var(--cm-transfer-border-radius);
  box-sizing: border-box;
  color: var(--cm-color-black);
}

.cm-transfer-panel .cm-transfer-panel__header .cm-checkbox {
  position: relative;
  display: flex;
  width: 100%;
  align-items: center;
}

.cm-transfer-panel .cm-transfer-panel__header .cm-checkbox .cm-checkbox__label {
  font-size: 16px;
  color: var(--cm-text-color-primary);
  font-weight: 400;
}

.cm-transfer-panel .cm-transfer-panel__header .cm-checkbox .cm-checkbox__label span {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translate3d(0, -50%, 0);
  color: var(--cm-text-color-secondary);
  font-size: 12px;
  font-weight: 400;
}

.cm-transfer-panel .cm-transfer-panel__footer {
  height: var(--cm-transfer-pancm-footer-height);
  background: var(--cm-bg-color-overlay);
  margin: 0;
  padding: 0;
  border: 1px solid var(--cm-transfer-border-color);
  border-bottom-left-radius: var(--cm-transfer-border-radius);
  border-bottom-right-radius: var(--cm-transfer-border-radius);
}

.cm-transfer-panel .cm-transfer-panel__footer::after {
  display: inline-block;
  content: "";
  height: 100%;
  vertical-align: middle;
}

.cm-transfer-panel .cm-transfer-panel__footer .cm-checkbox {
  padding-left: 20px;
  color: var(--cm-text-color-regular);
}

.cm-transfer-panel .cm-transfer-panel__empty {
  margin: 0;
  height: var(--cm-transfer-item-height);
  line-height: var(--cm-transfer-item-height);
  padding: 6px 15px 0;
  color: var(--cm-text-color-secondary);
  text-align: center;
}

.cm-transfer-panel .cm-checkbox__label {
  padding-left: 8px;
}

.cm-transfer-panel .cm-checkbox__inner {
  height: 14px;
  width: 14px;
  border-radius: 3px;
}

.cm-transfer-panel .cm-checkbox__inner::after {
  height: 6px;
  width: 3px;
  left: 4px;
}

.cm-tree {
  --cm-tree-node-hover-bg-color: var(--cm-fill-color-light);
  --cm-tree-text-color: var(--cm-text-color-regular);
  --cm-tree-expand-icon-color: var(--cm-text-color-placeholder);
}

.cm-tree {
  position: relative;
  cursor: default;
  background: var(--cm-fill-color-blank);
  color: var(--cm-tree-text-color);
  font-size: var(--cm-font-size-base);
}

.cm-tree__empty-block {
  position: relative;
  min-height: 60px;
  text-align: center;
  width: 100%;
  height: 100%;
}

.cm-tree__empty-text {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  color: var(--cm-text-color-secondary);
  font-size: var(--cm-font-size-base);
}

.cm-tree__drop-indicator {
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background-color: var(--cm-color-primary);
}

.cm-tree-node {
  white-space: nowrap;
  outline: 0;
}

.cm-tree-node:focus > .cm-tree-node__content {
  background-color: var(--cm-tree-node-hover-bg-color);
}

.cm-tree-node.is-drop-inner > .cm-tree-node__content .cm-tree-node__label {
  background-color: var(--cm-color-primary);
  color: #fff;
}

.cm-tree-node__content {
  display: flex;
  align-items: center;
  height: 26px;
  cursor: pointer;
}

.cm-tree-node__content > .cm-tree-node__expand-icon {
  padding: 6px;
  box-sizing: content-box;
}

.cm-tree-node__content > label.cm-checkbox {
  margin-right: 8px;
}

.cm-tree-node__content:hover {
  background-color: var(--cm-tree-node-hover-bg-color);
}

.cm-tree.is-dragging .cm-tree-node__content {
  cursor: move;
}

.cm-tree.is-dragging .cm-tree-node__content * {
  pointer-events: none;
}

.cm-tree.is-dragging.is-drop-not-allow .cm-tree-node__content {
  cursor: not-allowed;
}

.cm-tree-node__expand-icon {
  cursor: pointer;
  color: var(--cm-tree-expand-icon-color);
  font-size: 12px;
  transform: rotate(0);
  transition: transform var(--cm-transition-duration) ease-in-out;
}

.cm-tree-node__expand-icon.expanded {
  transform: rotate(90deg);
}

.cm-tree-node__expand-icon.is-leaf {
  color: transparent;
  cursor: default;
}

.cm-tree-node__expand-icon.is-hidden {
  visibility: hidden;
}

.cm-tree-node__loading-icon {
  margin-right: 8px;
  font-size: var(--cm-font-size-base);
  color: var(--cm-tree-expand-icon-color);
}

.cm-tree-node > .cm-tree-node__children {
  overflow: hidden;
  background-color: transparent;
}

.cm-tree-node.is-expanded > .cm-tree-node__children {
  display: block;
}

.cm-tree--highlight-current .cm-tree-node.is-current > .cm-tree-node__content {
  background-color: var(--cm-color-primary-light-9);
}

.cm-tree-select {
  --cm-tree-node-hover-bg-color: var(--cm-fill-color-light);
  --cm-tree-text-color: var(--cm-text-color-regular);
  --cm-tree-expand-icon-color: var(--cm-text-color-placeholder);
}

.cm-tree-select__popper .cm-tree-node__expand-icon {
  margin-left: 8px;
}

.cm-tree-select__popper .cm-tree-node.is-checked > .cm-tree-node__content .cm-select-dropdown__item.selected::after {
  content: none;
}

.cm-tree-select__popper .cm-select-dropdown__item {
  flex: 1;
  background: 0 0 !important;
  padding-left: 0;
  height: 20px;
  line-height: 20px;
}

.cm-upload {
  --cm-upload-dragger-padding-horizontal: 40px;
  --cm-upload-dragger-padding-vertical: 10px;
}

.cm-upload {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  outline: 0;
}

.cm-upload__input {
  display: none;
}

.cm-upload__tip {
  font-size: 12px;
  color: var(--cm-text-color-regular);
  margin-top: 7px;
}

.cm-upload iframe {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  opacity: 0;
}

.cm-upload--picture-card {
  --cm-upload-picture-card-size: 148px;
  background-color: var(--cm-fill-color-lighter);
  border: 1px dashed var(--cm-border-color-darker);
  border-radius: 6px;
  box-sizing: border-box;
  width: var(--cm-upload-picture-card-size);
  height: var(--cm-upload-picture-card-size);
  cursor: pointer;
  vertical-align: top;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.cm-upload--picture-card i {
  font-size: 28px;
  color: var(--cm-text-color-secondary);
}

.cm-upload--picture-card:hover {
  border-color: var(--cm-color-primary);
  color: var(--cm-color-primary);
}

.cm-upload.is-drag {
  display: block;
}

.cm-upload:focus {
  border-color: var(--cm-color-primary);
  color: var(--cm-color-primary);
}

.cm-upload:focus .cm-upload-dragger {
  border-color: var(--cm-color-primary);
}

.cm-upload-dragger {
  padding: var(--cm-upload-dragger-padding-horizontal) var(--cm-upload-dragger-padding-vertical);
  background-color: var(--cm-fill-color-blank);
  border: 1px dashed var(--cm-border-color);
  border-radius: 6px;
  box-sizing: border-box;
  text-align: center;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}

.cm-upload-dragger .cm-icon--upload {
  font-size: 67px;
  color: var(--cm-text-color-placeholder);
  margin-bottom: 16px;
  line-height: 50px;
}

.cm-upload-dragger + .cm-upload__tip {
  text-align: center;
}

.cm-upload-dragger ~ .cm-upload__files {
  border-top: var(--cm-border);
  margin-top: 7px;
  padding-top: 5px;
}

.cm-upload-dragger .cm-upload__text {
  color: var(--cm-text-color-regular);
  font-size: 14px;
  text-align: center;
}

.cm-upload-dragger .cm-upload__text em {
  color: var(--cm-color-primary);
  font-style: normal;
}

.cm-upload-dragger:hover {
  border-color: var(--cm-color-primary);
}

.cm-upload-dragger.is-dragover {
  padding: calc(var(--cm-upload-dragger-padding-horizontal) - 1px) calc(var(--cm-upload-dragger-padding-vertical) - 1px);
  background-color: var(--cm-color-primary-light-9);
  border: 2px dashed var(--cm-color-primary);
}

.cm-upload-list {
  margin: 10px 0 0;
  padding: 0;
  list-style: none;
  position: relative;
}

.cm-upload-list__item {
  transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1);
  font-size: 14px;
  color: var(--cm-text-color-regular);
  margin-bottom: 5px;
  position: relative;
  box-sizing: border-box;
  border-radius: 4px;
  width: 100%;
}

.cm-upload-list__item .cm-progress {
  position: absolute;
  top: 20px;
  width: 100%;
}

.cm-upload-list__item .cm-progress__text {
  position: absolute;
  right: 0;
  top: -13px;
}

.cm-upload-list__item .cm-progress-bar {
  margin-right: 0;
  padding-right: 0;
}

.cm-upload-list__item .cm-icon--upload-success {
  color: var(--cm-color-success);
}

.cm-upload-list__item .cm-icon--close {
  display: none;
  position: absolute;
  right: 5px;
  top: 50%;
  cursor: pointer;
  opacity: 0.75;
  color: var(--cm-text-color-regular);
  transition: opacity var(--cm-transition-duration);
  transform: translateY(-50%);
}

.cm-upload-list__item .cm-icon--close:hover {
  opacity: 1;
  color: var(--cm-color-primary);
}

.cm-upload-list__item .cm-icon--close-tip {
  display: none;
  position: absolute;
  top: 1px;
  right: 5px;
  font-size: 12px;
  cursor: pointer;
  opacity: 1;
  color: var(--cm-color-primary);
  font-style: normal;
}

.cm-upload-list__item:hover {
  background-color: var(--cm-fill-color-light);
}

.cm-upload-list__item:hover .cm-icon--close {
  display: inline-flex;
}

.cm-upload-list__item:hover .cm-progress__text {
  display: none;
}

.cm-upload-list__item .cm-upload-list__item-info {
  display: inline-flex;
  justify-content: center;
  flex-direction: column;
  width: calc(100% - 30px);
  margin-left: 4px;
}

.cm-upload-list__item.is-success .cm-upload-list__item-status-label {
  display: inline-flex;
}

.cm-upload-list__item.is-success .cm-upload-list__item-name:focus,
.cm-upload-list__item.is-success .cm-upload-list__item-name:hover {
  color: var(--cm-color-primary);
  cursor: pointer;
}

.cm-upload-list__item.is-success:focus:not(:hover) .cm-icon--close-tip {
  display: inline-block;
}

.cm-upload-list__item.is-success:active,
.cm-upload-list__item.is-success:not(.focusing):focus {
  outline-width: 0;
}

.cm-upload-list__item.is-success:active .cm-icon--close-tip,
.cm-upload-list__item.is-success:not(.focusing):focus .cm-icon--close-tip {
  display: none;
}

.cm-upload-list__item.is-success:focus .cm-upload-list__item-status-label,
.cm-upload-list__item.is-success:hover .cm-upload-list__item-status-label {
  display: none;
  opacity: 0;
}

.cm-upload-list__item-name {
  color: var(--cm-text-color-regular);
  display: inline-flex;
  text-align: center;
  align-items: center;
  padding: 0 4px;
  transition: color var(--cm-transition-duration);
  font-size: var(--cm-font-size-base);
}

.cm-upload-list__item-name .cm-icon {
  margin-right: 6px;
  color: var(--cm-text-color-secondary);
}

.cm-upload-list__item-file-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cm-upload-list__item-status-label {
  position: absolute;
  right: 5px;
  top: 0;
  line-height: inherit;
  display: none;
  height: 100%;
  justify-content: center;
  align-items: center;
  transition: opacity var(--cm-transition-duration);
}

.cm-upload-list__item-delete {
  position: absolute;
  right: 10px;
  top: 0;
  font-size: 12px;
  color: var(--cm-text-color-regular);
  display: none;
}

.cm-upload-list__item-delete:hover {
  color: var(--cm-color-primary);
}

.cm-upload-list--picture-card {
  --cm-upload-list-picture-card-size: 148px;
  display: inline-flex;
  flex-wrap: wrap;
  margin: 0;
}

.cm-upload-list--picture-card .cm-upload-list__item {
  overflow: hidden;
  background-color: var(--cm-fill-color-blank);
  border: 1px solid var(--cm-border-color);
  border-radius: 6px;
  box-sizing: border-box;
  width: var(--cm-upload-list-picture-card-size);
  height: var(--cm-upload-list-picture-card-size);
  margin: 0 8px 8px 0;
  padding: 0;
  display: inline-flex;
}

.cm-upload-list--picture-card .cm-upload-list__item .cm-icon--check,
.cm-upload-list--picture-card .cm-upload-list__item .cm-icon--circle-check {
  color: #fff;
}

.cm-upload-list--picture-card .cm-upload-list__item .cm-icon--close {
  display: none;
}

.cm-upload-list--picture-card .cm-upload-list__item:hover .cm-upload-list__item-status-label {
  opacity: 0;
  display: block;
}

.cm-upload-list--picture-card .cm-upload-list__item:hover .cm-progress__text {
  display: block;
}

.cm-upload-list--picture-card .cm-upload-list__item .cm-upload-list__item-name {
  display: none;
}

.cm-upload-list--picture-card .cm-upload-list__item-thumbnail {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.cm-upload-list--picture-card .cm-upload-list__item-status-label {
  right: -15px;
  top: -6px;
  width: 40px;
  height: 24px;
  background: var(--cm-color-success);
  text-align: center;
  transform: rotate(45deg);
}

.cm-upload-list--picture-card .cm-upload-list__item-status-label i {
  font-size: 12px;
  margin-top: 11px;
  transform: rotate(-45deg);
}

.cm-upload-list--picture-card .cm-upload-list__item-actions {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  cursor: default;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  opacity: 0;
  font-size: 20px;
  background-color: var(--cm-overlay-color-lighter);
  transition: opacity var(--cm-transition-duration);
}

.cm-upload-list--picture-card .cm-upload-list__item-actions span {
  display: none;
  cursor: pointer;
}

.cm-upload-list--picture-card .cm-upload-list__item-actions span + span {
  margin-left: 1rem;
}

.cm-upload-list--picture-card .cm-upload-list__item-actions .cm-upload-list__item-delete {
  position: static;
  font-size: inherit;
  color: inherit;
}

.cm-upload-list--picture-card .cm-upload-list__item-actions:hover {
  opacity: 1;
}

.cm-upload-list--picture-card .cm-upload-list__item-actions:hover span {
  display: inline-flex;
}

.cm-upload-list--picture-card .cm-progress {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  bottom: auto;
  width: 126px;
}

.cm-upload-list--picture-card .cm-progress .cm-progress__text {
  top: 50%;
}

.cm-upload-list--picture .cm-upload-list__item {
  overflow: hidden;
  z-index: 0;
  background-color: var(--cm-fill-color-blank);
  border: 1px solid var(--cm-border-color);
  border-radius: 6px;
  box-sizing: border-box;
  margin-top: 10px;
  padding: 10px;
  display: flex;
  align-items: center;
}

.cm-upload-list--picture .cm-upload-list__item .cm-icon--check,
.cm-upload-list--picture .cm-upload-list__item .cm-icon--circle-check {
  color: #fff;
}

.cm-upload-list--picture .cm-upload-list__item:hover .cm-upload-list__item-status-label {
  opacity: 0;
  display: inline-flex;
}

.cm-upload-list--picture .cm-upload-list__item:hover .cm-progress__text {
  display: block;
}

.cm-upload-list--picture .cm-upload-list__item.is-success .cm-upload-list__item-name i {
  display: none;
}

.cm-upload-list--picture .cm-upload-list__item .cm-icon--close {
  top: 5px;
  transform: translateY(0);
}

.cm-upload-list--picture .cm-upload-list__item-thumbnail {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 70px;
  -o-object-fit: contain;
  object-fit: contain;
  position: relative;
  z-index: 1;
  background-color: var(--cm-color-white);
}

.cm-upload-list--picture .cm-upload-list__item-status-label {
  position: absolute;
  right: -17px;
  top: -7px;
  width: 46px;
  height: 26px;
  background: var(--cm-color-success);
  text-align: center;
  transform: rotate(45deg);
}

.cm-upload-list--picture .cm-upload-list__item-status-label i {
  font-size: 12px;
  margin-top: 12px;
  transform: rotate(-45deg);
}

.cm-upload-list--picture .cm-progress {
  position: relative;
  top: -7px;
}

.cm-upload-cover {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 10;
  cursor: default;
}

.cm-upload-cover::after {
  display: inline-block;
  content: "";
  height: 100%;
  vertical-align: middle;
}

.cm-upload-cover img {
  display: block;
  width: 100%;
  height: 100%;
}

.cm-upload-cover__label {
  right: -15px;
  top: -6px;
  width: 40px;
  height: 24px;
  background: var(--cm-color-success);
  text-align: center;
  transform: rotate(45deg);
}

.cm-upload-cover__label i {
  font-size: 12px;
  margin-top: 11px;
  transform: rotate(-45deg);
  color: #fff;
}

.cm-upload-cover__progress {
  display: inline-block;
  vertical-align: middle;
  position: static;
  width: 243px;
}

.cm-upload-cover__progress + .cm-upload__inner {
  opacity: 0;
}

.cm-upload-cover__content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.cm-upload-cover__interact {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--cm-overlay-color-light);
  text-align: center;
}

.cm-upload-cover__interact .btn {
  display: inline-block;
  color: #fff;
  font-size: 14px;
  cursor: pointer;
  vertical-align: middle;
  transition: var(--cm-transition-md-fade);
  margin-top: 60px;
}

.cm-upload-cover__interact .btn i {
  margin-top: 0;
}

.cm-upload-cover__interact .btn span {
  opacity: 0;
  transition: opacity 0.15s linear;
}

.cm-upload-cover__interact .btn:not(:first-child) {
  margin-left: 35px;
}

.cm-upload-cover__interact .btn:hover {
  transform: translateY(-13px);
}

.cm-upload-cover__interact .btn:hover span {
  opacity: 1;
}

.cm-upload-cover__interact .btn i {
  color: #fff;
  display: block;
  font-size: 24px;
  line-height: inherit;
  margin: 0 auto 5px;
}

.cm-upload-cover__title {
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #fff;
  height: 36px;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 400;
  text-align: left;
  padding: 0 10px;
  margin: 0;
  line-height: 36px;
  font-size: 14px;
  color: var(--cm-text-color-primary);
}

.cm-upload-cover + .cm-upload__inner {
  opacity: 0;
  position: relative;
  z-index: 1;
}

.cm-vl__wrapper {
  position: relative;
}

.cm-vl__wrapper:hover .cm-virtual-scrollbar {
  opacity: 1;
}

.cm-vl__wrapper.always-on .cm-virtual-scrollbar {
  opacity: 1;
}

.cm-vl__window {
  scrollbar-width: none;
}

.cm-vl__window::-webkit-scrollbar {
  display: none;
}

.cm-virtual-scrollbar {
  opacity: 0;
  transition: opacity 340ms ease-out;
}

.cm-virtual-scrollbar.always-on {
  opacity: 1;
}

.cm-vg__wrapper {
  position: relative;
}

.cm-popper {
  --cm-popper-border-radius: var(--cm-popover-border-radius, 4px);
}

.cm-popper {
  position: absolute;
  border-radius: var(--cm-popper-border-radius);
  padding: 5px 11px;
  z-index: 2000;
  font-size: 12px;
  line-height: 20px;
  min-width: 10px;
  word-wrap: break-word;
  visibility: visible;
}

.cm-popper.is-dark {
  color: var(--cm-bg-color);
  background: var(--cm-text-color-primary);
  border: 1px solid var(--cm-text-color-primary);
}

.cm-popper.is-dark .cm-popper__arrow::before {
  border: 1px solid var(--cm-text-color-primary);
  background: var(--cm-text-color-primary);
  right: 0;
}

.cm-popper.is-light {
  background: var(--cm-bg-color-overlay);
  border: 1px solid var(--cm-border-color-light);
}

.cm-popper.is-light .cm-popper__arrow::before {
  border: 1px solid var(--cm-border-color-light);
  background: var(--cm-bg-color-overlay);
  right: 0;
}

.cm-popper.is-pure {
  padding: 0;
}

.cm-popper__arrow {
  position: absolute;
  width: 10px;
  height: 10px;
  z-index: -1;
}

.cm-popper__arrow::before {
  position: absolute;
  width: 10px;
  height: 10px;
  z-index: -1;
  content: " ";
  transform: rotate(45deg);
  background: var(--cm-text-color-primary);
  box-sizing: border-box;
}

.cm-popper[data-popper-placement^=top] > .cm-popper__arrow {
  bottom: -5px;
}

.cm-popper[data-popper-placement^=top] > .cm-popper__arrow::before {
  border-bottom-right-radius: 2px;
}

.cm-popper[data-popper-placement^=bottom] > .cm-popper__arrow {
  top: -5px;
}

.cm-popper[data-popper-placement^=bottom] > .cm-popper__arrow::before {
  border-top-left-radius: 2px;
}

.cm-popper[data-popper-placement^=left] > .cm-popper__arrow {
  right: -5px;
}

.cm-popper[data-popper-placement^=left] > .cm-popper__arrow::before {
  border-top-right-radius: 2px;
}

.cm-popper[data-popper-placement^=right] > .cm-popper__arrow {
  left: -5px;
}

.cm-popper[data-popper-placement^=right] > .cm-popper__arrow::before {
  border-bottom-left-radius: 2px;
}

.cm-popper[data-popper-placement^=top] .cm-popper__arrow::before {
  border-top-color: transparent !important;
  border-left-color: transparent !important;
}

.cm-popper[data-popper-placement^=bottom] .cm-popper__arrow::before {
  border-bottom-color: transparent !important;
  border-right-color: transparent !important;
}

.cm-popper[data-popper-placement^=left] .cm-popper__arrow::before {
  border-left-color: transparent !important;
  border-bottom-color: transparent !important;
}

.cm-popper[data-popper-placement^=right] .cm-popper__arrow::before {
  border-right-color: transparent !important;
  border-top-color: transparent !important;
}

.cm-select-dropdown__item {
  font-size: var(--cm-font-size-base);
  padding: 0 32px 0 20px;
  position: relative;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--cm-text-color-regular);
  height: 34px;
  line-height: 34px;
  box-sizing: border-box;
  cursor: pointer;
}

.cm-select-dropdown__item.is-disabled {
  color: var(--cm-text-color-placeholder);
  cursor: not-allowed;
}

.cm-select-dropdown__item.hover,
.cm-select-dropdown__item:hover {
  background-color: var(--cm-fill-color-light);
}

.cm-select-dropdown__item.selected {
  color: var(--cm-color-primary);
  font-weight: 700;
}

.cm-statistic {
  --cm-statistic-title-font-weight: 400;
  --cm-statistic-title-font-size: var(--cm-font-size-extra-small);
  --cm-statistic-title-color: var(--cm-text-color-regular);
  --cm-statistic-content-font-weight: 400;
  --cm-statistic-content-font-size: var(--cm-font-size-extra-large);
  --cm-statistic-content-color: var(--cm-text-color-primary);
}

.cm-statistic__head {
  font-weight: var(--cm-statistic-title-font-weight);
  font-size: var(--cm-statistic-title-font-size);
  color: var(--cm-statistic-title-color);
  line-height: 20px;
  margin-bottom: 4px;
}

.cm-statistic__content {
  font-weight: var(--cm-statistic-content-font-weight);
  font-size: var(--cm-statistic-content-font-size);
  color: var(--cm-statistic-content-color);
}

.cm-statistic__value {
  display: inline-block;
}

.cm-statistic__prefix {
  margin-right: 4px;
  display: inline-block;
}

.cm-statistic__suffix {
  margin-left: 4px;
  display: inline-block;
}

.chat-container {
  height: 100%;
  display: flex;
  justify-content: space-between;
  position: relative;
  border-radius: 2px;
  max-height: 100vh;
  max-width: 100vw;
  background: #fff url("https://cdn-static-devbit.csdn.net/ai100/chat/imgs/bg.png") center/cover no-repeat;
}
.chat-container .chat-tools {
  display: flex;
  align-items: center;
  position: absolute;
  top: 6px;
  left: 16px;
  z-index: 100;
  column-gap: 8px;
}
@media screen and (min-width: 769px) {
  .chat-container .chat-tools {
    display: none;
  }
}
.chat-container .chat-tools img {
  width: 20px;
  opacity: 0.8;
}
.chat-container .chat-tools img.settings {
  width: 21px;
}

    </style>
    <style>
        .wwads-horizontal,.wwads-vertical{background-color:#f4f8fa;padding:5px;min-height:120px;margin-top:20px;box-sizing:border-box;border-radius:3px;font-family:sans-serif;display:flex;min-width:150px;position:relative;overflow:hidden}.wwads-horizontal{flex-wrap:wrap;justify-content:center}.wwads-vertical{flex-direction:column;align-items:center;padding-bottom:32px}.wwads-horizontal a,.wwads-vertical a{text-decoration:none}.wwads-horizontal .wwads-content,.wwads-horizontal .wwads-img,.wwads-vertical .wwads-content,.wwads-vertical .wwads-img{margin:5px}.wwads-horizontal .wwads-content{flex:130px;text-align:left}.wwads-vertical .wwads-content{margin-top:10px;text-align:left}.wwads-content .wwads-text,.wwads-horizontal .wwads-text{font-size:14px;line-height:1.4;color:#0e1011;-webkit-font-smoothing:antialiased;word-break:break-word}.wwads-horizontal .wwads-poweredby,.wwads-vertical .wwads-poweredby{display:flex;align-items:center;margin-top:1em}.wwads-vertical .wwads-poweredby{position:absolute;left:10px;bottom:10px;display:flex;align-items:center}.wwads-horizontal .wwads-poweredby .wwads-logo,.wwads-vertical .wwads-poweredby .wwads-logo{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 210' fill='%23a6b7bf'%3E%3Cpath d='M24.25 211.46L0 197.46l57-98.73a74.004 74.004 0 11128.18 74l-7 12.12-24.25-14 7-12.12a46.002 46.002 0 00-79.68-46z'/%3E%3Cpath d='M121.21 209.73a74.07 74.07 0 01-64.21-37l-7-12.12 24.25-14 7 12.12a46.002 46.002 0 1079.68-46l-57-98.73 24.25-14 57 98.73a74 74 0 01-64 111z'/%3E%3Cpath d='M235.09 209.73h-114a74 74 0 010-148h14v28h-14a46 46 0 000 92h114z'/%3E%3C/svg%3E") no-repeat;padding:0 1px 11px 11px}.wwads-horizontal .wwads-poweredby .wwads-logo-text,.wwads-vertical .wwads-poweredby .wwads-logo-text{font-size:11px;margin-left:3px;color:#a6b7bf}.wwads-horizontal .wwads-hide,.wwads-vertical .wwads-hide{position:absolute;right:-23px;bottom:-23px;width:46px;height:46px;border-radius:23px;transition:all .3s ease-in-out;cursor:pointer}.wwads-horizontal .wwads-hide .hide-svg,.wwads-vertical .wwads-hide .hide-svg{position:absolute;left:10px;top:10px;background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='7' fill='%23a6b7bf'%3E%3Cpath d='M.879.672L3 2.793 5.121.672a.5.5 0 11.707.707L3.708 3.5l2.12 2.121a.5.5 0 11-.707.707l-2.12-2.12-2.122 2.12a.5.5 0 11-.707-.707l2.121-2.12L.172 1.378A.5.5 0 01.879.672z'/%3E%3C/svg%3E") no-repeat}.wwads-horizontal .wwads-hide:hover,.wwads-vertical .wwads-hide:hover{background:rgb(0 0 0/.05)}

    </style>
</head>
<body class="nodata " style="">
<div id="MathJax_Message" style="display: none;"></div>
<div id="toolbarBox" style="min-height: 48px;">
    <div id="csdn-toolbar" style="position: fixed; top: 0px; left: 0px; z-index: 1993; min-width: 100%; width: max-content;">
        <div class="toolbar-inside exp3">
            <div class="toolbar-container">
                <div class="toolbar-container-left">
                    <div class="toolbar-logo toolbar-subMenu-box csdn-toolbar-fl"><a data-report-click="{&quot;spm&quot;:&quot;3001.4476&quot;}" data-report-query="spm=3001.4476" href="https://www.csdn.net/"><img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201124032511.png" title="CSDN首页"></a>
                    </div>
                    <ul class="toolbar-menus csdn-toolbar-fl">
                        <li class="active " title="阅读深度、前沿文章">
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_336&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/&quot;,&quot;spm&quot;:&quot;3001.4477&quot;}" data-report-query="spm=3001.4477" href="https://blog.csdn.net/">
                                博客


                            </a>


                        </li>
                        <li class="" title="高价值源码课程分享">
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_336&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/&quot;,&quot;spm&quot;:&quot;3001.6907&quot;}" data-report-query="spm=3001.6907" href="https://download.csdn.net/">
                                下载


                            </a>


                        </li>
                        <li class="" title="系统学习·问答·比赛">
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_336&quot;,&quot;dest&quot;:&quot;https://edu.csdn.net/&quot;,&quot;spm&quot;:&quot;3001.4482&quot;}" data-report-query="spm=3001.4482" href="https://edu.csdn.net/">
                                学习


                            </a>


                        </li>
                        <li class="" title="找到志同道合的伙伴">
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_336&quot;,&quot;dest&quot;:&quot;https://bbs.csdn.net/&quot;,&quot;spm&quot;:&quot;3001.6068&quot;}" data-report-query="spm=3001.6068" href="https://bbs.csdn.net/">
                                社区


                            </a>


                        </li>
                        falsefalse
                        <li class="" title="开源代码托管">
                            <a data-report-click="{&quot;mod&quot;:&quot;&quot;,&quot;dest&quot;:&quot;https://gitcode.com?utm_source=csdn_toolbar&quot;,&quot;spm&quot;:&quot;3001.6768&quot;}" data-report-query="spm=3001.6768" href="https://gitcode.com/?utm_source=csdn_toolbar">
                                GitCode


                            </a>


                        </li>
                        <li class="" title="让你的灵感立即落地">
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_336&quot;,&quot;dest&quot;:&quot;https://inscode.csdn.net?utm_source=260232576&quot;,&quot;spm&quot;:&quot;3001.8290&quot;}" data-report-query="spm=3001.8290" href="https://inscode.csdn.net/?utm_source=260232576">
                                InsCode


                            </a>


                        </li>
                    </ul>
                </div>
                <div class="toolbar-container-middle">
                    <div class="toolbar-search onlySearch ">
                        <div class="toolbar-search-container">
                            <span class="icon-fire" style="display: none;"></span>
                            <input autocomplete="off" id="toolbar-search-input" maxlength="2000" placeholder="java" style="text-indent: 12px;" type="text" value="">
                            <div class="gradient"></div>
                            <button id="toolbar-search-button"><i></i><span>搜索</span></button>
                            <input autocomplete="new-password" disabled="true" readonly="" style="display: none; position:absolute;left:-9999999px;width:0;height:0;" type="password">
                        </div>
                    </div>
                </div>
                <div class="toolbar-container-right">
                    <div class="toolbar-btns onlyUser">
                        <div class="toolbar-btn toolbar-btn-login toolbar-btn-login-new csdn-toolbar-fl toolbar-subMenu-box">
                            <a class="hasAvatar" data-report-click="{&quot;spm&quot;: &quot;3001.5343&quot;}" data-report-query="spm=3001.5343" href="https://blog.csdn.net/qq_16425803"><img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/b58d7585d66649f2a539995a8e9a2a07_qq_16425803.jpg!1"></a>
                            <div class="csdn-toolbar-plugin" id="csdn-toolbar-profile">
                                <div class="csdn-profile-top">
                                    <a class="csdn-profile-avatar" data-report-click="{&quot;spm&quot;: &quot;3001.5343&quot;}" data-report-query="spm=3001.5343" href="https://blog.csdn.net/qq_16425803"><img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/b58d7585d66649f2a539995a8e9a2a07_qq_16425803.jpg!1"></a>
                                    <p class="csdn-profile-nickName">qq_16425803</p>
                                    <a class="csdn-profile-no-vip" data-report-click="{&quot;spm&quot;: &quot;3001.5344&quot;}" data-report-query="spm=3001.5344" href="https://mall.csdn.net/vip"></a>
                                </div>
                                <div class="csdn-profile-mid">
                                    <a data-report-click="{&quot;spm&quot;: &quot;3001.5347&quot;}" data-report-query="spm=3001.5347" href="https://blog.csdn.net/qq_16425803?type=sub&amp;subType=fans"><i class="csdn-profile-fansCount">1</i>粉丝</a>
                                    <a data-report-click="{&quot;spm&quot;: &quot;3001.5348&quot;}" data-report-query="spm=3001.5348" href="https://blog.csdn.net/qq_16425803?type=sub"><i class="csdn-profile-followCount">99</i>关注</a>
                                    <a data-report-click="{&quot;spm&quot;: &quot;3001.5349&quot;}" data-report-query="spm=3001.5349" href="https://blog.csdn.net/qq_16425803"><i class="csdn-profile-likeCount">--</i>获赞</a>
                                </div>
                                <div class="csdn-profile-bottom">
                                    <ul class="csdn-border-bottom">
                                        <li class=""><a data-report-click="{&quot;dest&quot;:&quot;https://i.csdn.net/#/user-center/profile&quot;,&quot;spm&quot;:&quot;3001.5111&quot;}" data-report-query="spm=3001.5111" href="https://i.csdn.net/#/user-center/profile"><i class="csdn-profile-icon csdn-profile-icon-person"></i>个人中心</a></li>
                                        <li class=""><a data-report-click="{&quot;dest&quot;:&quot;https://mp.csdn.net/mp_blog/manage/article?spm=1011.2124.3001.5298&quot;,&quot;spm&quot;:&quot;3001.5448&quot;}" data-report-query="spm=3001.5448" href="https://mp.csdn.net/mp_blog/manage/article?spm=1011.2124.3001.5298"><i class="csdn-profile-icon csdn-profile-icon-pages"></i>内容管理</a></li>
                                        <li class=""><a data-report-click="{&quot;dest&quot;:&quot;https://edu.csdn.net?utm_source=edu_txxl_mh&quot;,&quot;spm&quot;:&quot;3001.5350&quot;}" data-report-query="spm=3001.5350" href="https://edu.csdn.net/?utm_source=edu_txxl_mh"><i class="csdn-profile-icon csdn-profile-icon-study"></i>我的学习</a></li>
                                        <li class=""><a data-report-click="{&quot;dest&quot;:&quot;https://mall.csdn.net/myorder&quot;,&quot;spm&quot;:&quot;3001.5137&quot;}" data-report-query="spm=3001.5137" href="https://mall.csdn.net/myorder"><i class="csdn-profile-icon csdn-profile-icon-order"></i>我的订单</a></li>
                                        <li class=""><a data-report-click="{&quot;dest&quot;:&quot;https://i.csdn.net/#/wallet/index&quot;,&quot;spm&quot;:&quot;3001.5136&quot;}" data-report-query="spm=3001.5136" href="https://i.csdn.net/#/wallet/index"><i class="csdn-profile-icon csdn-profile-icon-wallet"></i>我的钱包</a></li>
                                        <li class=""><a data-report-click="{&quot;dest&quot;:&quot;https://dev-portal.csdn.net/welcome?utm_source=toolbar_user_profile&quot;,&quot;spm&quot;:&quot;3001.7345&quot;}" data-report-query="spm=3001.7345" href="https://dev-portal.csdn.net/welcome?utm_source=toolbar_user_profile"><i class="csdn-profile-icon csdn-profile-icon-API"></i>我的云服务</a></li>
                                        <li class="pb-8 csdn-border-bottom"><a data-report-click="{&quot;dest&quot;:&quot;https://upload.csdn.net/level?utm_source=xz_pc_txxl&quot;,&quot;spm&quot;:&quot;3001.7346&quot;}" data-report-query="spm=3001.7346" href="https://upload.csdn.net/level?utm_source=xz_pc_txxl"><i class="csdn-profile-icon csdn-profile-icon-ac"></i>我的等级</a></li>
                                        <li class="pt-8 pb-8 csdn-border-bottom"><a data-report-click="{&quot;dest&quot;:&quot;https://i.csdn.net/#/uc/reward&quot;,&quot;spm&quot;:&quot;3001.5351&quot;}" data-report-query="spm=3001.5351" href="https://i.csdn.net/#/uc/reward"><i class="csdn-profile-icon csdn-profile-icon-draw"></i>签到抽奖</a></li>
                                        <li class="pt-8 csdn-profile-logout"><a data-report-click="{&quot;spm&quot;:&quot;3001.5139&quot;}" data-report-query="spm=3001.5139" href="javascript:;"><i class="csdn-profile-icon csdn-profile-icon-logout"></i>退出</a></li>
                                    </ul>
                                </div>
                            </div>
                        </div>
                        <div class="toolbar-btn toolbar-btn-vip csdn-toolbar-fl">
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_336&quot;,&quot;dest&quot;:&quot;https://mall.csdn.net/vip&quot;,&quot;spm&quot;:&quot;3001.4496&quot;}" data-report-query="spm=3001.4496" href="https://mall.csdn.net/vip" rel="nofollow" style="">
                                会员中心 <img style="position: relative; vertical-align: middle; width: 14px; top: -2px; left: 0px;;display:inline-block" "="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20210918025138.gif">
                            </a>
                            <div id="csdn-plugin-vip" style="background:url(https://img-home.csdnimg.cn/images/20210826055049.png) no-repeat center center; background-size: cover;" }="">
                                <div class="csdn-plugin-vip-header">
                                    会员特权
                                </div>
                                <div class="csdn-plugin-vip-body">
                                    <a href="https://mall.csdn.net/ai?utm_source=vip_toolbar_hyzx" rel="nofollow"><i class="csdn-plugin-vip-icon" style="background:url(https://img-home.csdnimg.cn/images/20230921103134.png);background-size: contain;"></i><br>AI工具集</a><a href="https://mall.csdn.net/vip?utm_source=vip_pc_hybjt" rel="nofollow"><i class="csdn-plugin-vip-icon" style="background:url(https://img-home.csdnimg.cn/images/20210826043936.png);background-size: contain;"></i><br>领券中心</a><a href="https://mall.csdn.net/vip?utm_source=vip_hyzx_fc_xsjz" rel="nofollow"><i class="csdn-plugin-vip-icon" style="background:url(https://img-home.csdnimg.cn/images/20211115095959.png);background-size: contain;"></i><br>赠1年</a><a href="https://vip.csdn.net/welfarecenter?utm_source=vip_hyzx_hytblq#discount_center" rel="nofollow"><i class="csdn-plugin-vip-icon" style="background:url(https://img-home.csdnimg.cn/images/20210826043937.png);background-size: contain;"></i><br>会员购</a>
                                </div>
                                <div class="csdn-plugin-vip-footer">
                                    <a class="csdn-plugin-vip-footer-link" data-report-click="{&quot;spm&quot;: &quot;3001.6440&quot;}" data-report-query="spm=3001.6440" href="https://mall.csdn.net/vip" rel="nofollow">
                                        领取限时优惠券，最高可减80元<i></i>
                                    </a>
                                    <a class="csdn-plugin-vip-footer-btn" data-report-click="{&quot;spm&quot;: &quot;3001.6439&quot;}" data-report-query="spm=3001.6439" href="https://mall.csdn.net/vip" rel="nofollow">
                                        领券开通
                                    </a>
                                </div>
                            </div>
                        </div>
                        <div class="toolbar-btn toolbar-btn-msg csdn-toolbar-fl">
                            <div class="toolbar-subMenu-box">
                                <a data-report-click="{&quot;spm&quot;:&quot;3001.4508&quot;}" data-report-query="spm=3001.4508" href="https://i.csdn.net/#/msg/index" id="toolbar-remind" rel="nofollow"><span class="pos-rel">消息<i class="toolbar-msg-count"></i></span></a>
                                <div class="toolbar-subMenu">
                                    <a data-type="comment" href="https://i.csdn.net/#/msg/index" rel="nofollow"><span class="pos-rel">评论和@</span></a>
                                    <a data-type="attention" href="https://i.csdn.net/#/msg/attention" rel="nofollow"><span class="pos-rel">新增粉丝</span></a>
                                    <a data-type="like" href="https://i.csdn.net/#/msg/like" rel="nofollow"><span class="pos-rel">赞和收藏</span></a>
                                    <a data-type="chat" href="https://im.csdn.net/im/main.html" rel="nofollow"><span class="pos-rel">私信<i></i></span></a>
                                    <a data-type="notice" href="https://i.csdn.net/#/msg/notice" rel="nofollow"><span class="pos-rel">系统通知<i></i></span></a>
                                    <a href="https://i.csdn.net/#/msg/setting" rel="nofollow">消息设置</a>
                                </div>
                            </div>
                            <div class="toolbar-msg-box"></div>
                        </div>
                        <div class="toolbar-btn toolbar-btn-collect csdn-toolbar-fl">
                            <a data-report-click="{&quot;spm&quot;:&quot;3001.7480&quot;}" data-report-query="spm=3001.7480" href="https://i.csdn.net/#/user-center/history" rel="nofollow">历史</a>

                            <div class="csdn-toolbar-plugin" id="csdn-toolbar-collection" style="display: none;">
                                <div class="toolbar-collection-left csdn-toolbar-scroll-box">
                                    <ul>
                                        <li class="collection-folder-active">
                                            <div class="toolbar-collection-folder-name">浏览历史</div>

                                        </li>

                                        <li>
                                            <div class="toolbar-collection-folder-name">默认收藏夹</div>
                                            <div class="toolbar-collection-folder-count">26</div>
                                        </li>
                                    </ul>
                                </div>

                                <div class="toolbar-collection-right">
                                    <ul class="csdn-toolbar-scroll-box">
                                        <li>
                                            <a href="https://blog.csdn.net/piaoranyuji/article/details/128187911" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">MyBatis foreach 标签常用方法总结</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/weixin_42675423/article/details/132150420" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">MyBatis之bind标签详解，bind预防SQL注入案例及详解</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/qq_41733192/article/details/131214116" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">利用lambda优化反射功能实现方法调用</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/dfBeautifulLive/article/details/124924441" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">手敲Mybatis(一)-实现Mapper代理注册和使用</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/qq_42419406/article/details/118914260" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">MyBatis 基石之 SqlNode</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/qq_28751971/article/details/123605502" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">mybatis中BoundSql获取流程简单分析？</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/m0_63174529/article/details/121500855" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">Mybatis源码解析：sql参数处理，原来可以这么简单-1，java线程池应用场景面试</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/m0_63989537/article/details/124640643" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">Java Type类型详解</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/JustBeauty/article/details/81116144" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">ParameterizedType详解</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/meinanqihao/article/details/90727777" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">Java类型中ParameterizedType，GenericArrayType，TypeVariabl，WildcardType详解</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/liuzipeizliuziyu/article/details/132067680" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">理解 Java 的 ParameterizedType 接口</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://download.csdn.net/download/weixin_38599545/12802739" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">下载</span>
                                                <span class="toolbar-collection-title">谈谈Java类型中ParameterizedType，GenericArrayType，TypeVariabl，WildcardType</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/weixin_31236101/article/details/116045926" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">JAVA中parameterized,谈谈Java类型中ParameterizedType，GenericArrayType，TypeVariabl，WildcardType...</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/sinat_29581293/article/details/52227953" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">Java类型中ParameterizedType，GenericArrayType，TypeVariabl，WildcardType详解</span>
                                            </a>
                                        </li>

                                        <li>
                                            <a href="https://blog.csdn.net/weixin_45359574/article/details/105559327" rel="nofollow" target="_blank">
                                                <span class="toolbar-collection-type">博客</span>
                                                <span class="toolbar-collection-title">ParameterizedType及其方法详解</span>
                                            </a>
                                        </li>
                                    </ul>
                                    <a class="toolbar-collection-more" rel="nofollow">查看更多<i></i></a>
                                </div>
                                <div class="csdn-toolbar-plugin-triangle"></div>
                            </div>
                        </div>
                        <div class="toolbar-btn toolbar-btn-mp csdn-toolbar-fl">
                            <a data-report-click="{&quot;dest&quot;:&quot;https://mp.csdn.net/&quot;,&quot;spm&quot;:&quot;3001.8539&quot;}" data-report-query="spm=3001.8539" href="https://mp.csdn.net/" rel="nofollow" title="创作中心">
                                创作中心
                            </a>

                            <div class="csdn-toolbar-creative-mp" style="left: -130px;">
                                <a data-report-click="{&quot;spm&quot;:&quot;3001.9762&quot;,&quot;extra&quot;:{&quot;dataType&quot;:3}}" data-report-query="spm=3001.9762" href="https://mp.csdn.net/edit"><img alt="" class="csdn-toolbar-creative-mp-bg" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20231011044944.png"></a>
                                <img alt="" class="csdn-toolbar-creative-mp-close" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20230815023238.png">
                            </div>
                        </div>
                        <div class="toolbar-btn toolbar-btn-write toolbar-btn-write-new csdn-toolbar-fl toolbar-subMenu-box"><a data-report-click="{&quot;spm&quot;:&quot;3001.4503&quot;,&quot;extra&quot;:{&quot;dataType&quot;:&quot;&quot;}}" data-report-query="spm=3001.4503" href="https://mp.csdn.net/edit" rel="nofollow">发布</a></div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<script>
            var toolbarSearchExt = '{"landingWord":["mybatis的foreach标签用法"],"queryWord":"","tag":["mybatis","java","mysql"],"title":"MyBatis foreach 标签常用方法总结"}';


</script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/csdn-toolbar.js.下载" type="text/javascript"></script>
<script>
    (function(){
        var bp = document.createElement('script');
        var curProtocol = window.location.protocol.split(':')[0];
        if (curProtocol === 'https') {
            bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
        }
        else {
            bp.src = 'http://push.zhanzhang.baidu.com/push.js';
        }
        var s = document.getElementsByTagName("script")[0];
        s.parentNode.insertBefore(bp, s);
    })();


</script>

<link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/blog_code-01256533b5.min.css" rel="stylesheet">
<link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/chart-3456820cac.css" rel="stylesheet">
<link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/swiper.css" rel="stylesheet">
<script async="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/swiper.js.下载"></script>
<script>
      var articleId = 128187911;
      var commentscount = 0;
      var curentUrl = "https://blog.csdn.net/piaoranyuji/article/details/128187911";
      var myUrl = "https://my.csdn.net/";
        var highlight = ["foreach","mybatis","mysql","java","方法","用法","总结","标签","常用"];//高亮数组
        var isRecommendModule = true;
          var isBaiduPre = true;
          var baiduCount = 2;
          var setBaiduJsCount = 10;
      var share_card_url = "https://app-blog.csdn.net/share?article_id=128187911&username=piaoranyuji"
      var mallVipUrl = "https://mall.csdn.net/vip?vipSource=article"
      var vipArticleAbStyle = "t_2"
      var articleType = 1;
      var baiduKey = "mybatis的foreach标签用法";
      var copyPopSwitch = true;
      var needInsertBaidu = true;
      var recommendRegularDomainArr = ["blog.csdn.net/.+/article/details/","download.csdn.net/download/","edu.csdn.net/course/detail/","ask.csdn.net/questions/","bbs.csdn.net/topics/","www.csdn.net/gather_.+/"]
      var codeStyle = "atom-one-light";
      var baiduSearchType = "baidulandingword";
      var sharData = "{\"hot\":[{\"id\":1,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/a5f4260710904e538002a6ab337939b3.png\"},{\"id\":2,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/188b37199a2c4b74b1d9ffc39e0d52de.png\"},{\"id\":3,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/14ded358b631444581edd98a256bc5af.png\"},{\"id\":4,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/1470f23a770444d986ad551b9c33c5be.png\"},{\"id\":5,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/c329f5181dc74f6c9bd28c982bb9f91d.png\"},{\"id\":6,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/ccd8a3305e81460f9c505c95b432a65f.png\"},{\"id\":7,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/bc89d8283389440d97fc4d30e30f45e1.png\"},{\"id\":8,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/452d485b4a654f5592390550d2445edf.png\"},{\"id\":9,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/f8b9939db2ed474a8f43a643015fc8b7.png\"},{\"id\":10,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/6de8864187ab4ed3b1db0856369c36ff.png\"},{\"id\":11,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/673cc3470ff74072acba958dc0c46e2d.png\"},{\"id\":12,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/930c119760ac4491804db80f9c6d4e3f.png\"},{\"id\":13,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/15e6befb05a24233bc2b65e96aa8d972.png\"},{\"id\":14,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/2075fd6822184b95a41e214de4daec13.png\"},{\"id\":15,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/859b1552db244eb6891a809263a5c657.png\"},{\"id\":16,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/0be2f920f1f74290a98921974a9613fd.png\"},{\"id\":17,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/2e97e00b43f14afab494ea55ef3f4a6e.png\"},{\"id\":18,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/ff4ab252f46e444686f5135d6ebbfec0.png\"},{\"id\":19,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/ae029bbe99564e79911657912d36524f.png\"},{\"id\":20,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/b3ece39963de440388728e9e7b9bf427.png\"},{\"id\":21,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/6f14651a99ba486e926d63b6fa692997.png\"},{\"id\":22,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/83ceddf050084875a341e32dcceca721.png\"},{\"id\":23,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/b90368b8fd5d4c6c8c79a707d877cf7c.png\"},{\"id\":24,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/aeffae14ecf14e079b2616528c9a393b.png\"},{\"id\":25,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/c5a06b5a13d44d16bed868fc3384897a.png\"},{\"id\":26,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/08b697658b844b318cea3b119e9541ef.png\"},{\"id\":27,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/68ccb0b8d09346ac961d2b5c1a8c77bf.png\"},{\"id\":28,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/a2227a247e37418cbe0ea972ba6a859b.png\"},{\"id\":29,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/3a42825fede748f9993e5bb844ad350d.png\"},{\"id\":30,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/8882abc1dd484224b636966ea38555c3.png\"},{\"id\":31,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/4f6a5f636a3e444d83cf8cc06d87a159.png\"},{\"id\":32,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/1953ef79c56b4407b78d7181bdff11c3.png\"},{\"id\":33,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/c04a2a4f772948ed85b5b0380ed36287.png\"},{\"id\":34,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/5b4fecd05091405ea04d8c0f53e9f2c7.png\"},{\"id\":35,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/b89f576d700344e280d6ceb2a66c2420.png\"},{\"id\":36,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/1c65780e11804bbd9971ebadb3d78bcf.png\"},{\"id\":37,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/d590db2055f345db9706eb68a7ec151a.png\"},{\"id\":38,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/fe602f80700b4f6fb3c4a9e4c135510e.png\"},{\"id\":39,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/39ff2fcd31e04feba301a071976a0ba7.png\"},{\"id\":40,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/f9b61b3d113f436b828631837f89fb39.png\"},{\"id\":41,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/df1aca5f610c4ad48cd16da88c9c8499.png\"},{\"id\":42,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/d7acf73a1e6b41399a77a85040e10961.png\"},{\"id\":43,\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/b7f1b63542524b97962ff649ab4e7e23.png\"}],\"vip\":[{\"id\":1,\"vipUrl\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220920101150.png\",\"url\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220920101154.png\"},{\"id\":2,\"vipUrl\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220920101204.png\",\"url\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220920101208.png\"},{\"id\":3,\"vipUrl\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220920101211.png\",\"url\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220920101215.png\"},{\"id\":4,\"vipUrl\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220920101218.png\",\"url\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220920101220.png\"},{\"id\":5,\"vipUrl\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220920101223.png\",\"url\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220920101226.png\"},{\"id\":6,\"vipUrl\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220922100635.png\",\"url\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220922100639.png\"},{\"id\":7,\"vipUrl\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220922100642.png\",\"url\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220922100644.png\"},{\"id\":8,\"vipUrl\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220922100647.png\",\"url\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220922100649.png\"},{\"id\":9,\"vipUrl\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220922100652.png\",\"url\":\"https:\\/\\/img-home.csdnimg.cn\\/images\\/20220922100655.png\"},{\"id\":10,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/55de67481fde4b04b97ad78f11fe369a.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/bb2418fb537e4d78b10d8765ccd810c5.png\"},{\"id\":11,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/579c713394584d128104ef1044023954.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/f420d9fbcf5548079d31b5e809b6d6cd.png\"},{\"id\":12,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/75b7f3155ba642f5a4cc16b7baf44122.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/a9030f5877be401f8b340b80b0d91e64.png\"},{\"id\":13,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/0903d33cafa54934be3780aa54ae958d.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/2cd8c8929f5a42fca5da2a0aeb456203.png\"},{\"id\":14,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/949fd7c22884439fbfc3c0e9c3b8dee7.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/dafbea9bd9eb4f3b962b48dc41657f89.png\"},{\"id\":15,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/4119cfddd71d4e6a8a27a18dbb74d90e.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/c56310c8b6384d9e85388e4e342ce508.png\"},{\"id\":16,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/121575274da142bcbbbbc2e8243dd411.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/5013993de06542f881018bb9abe2edf7.png\"},{\"id\":17,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/4d97aa6dd4fe4f09a6bef5bdf8a6abcd.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/76f23877b6ad4066ad45ce8e31b4b977.png\"},{\"id\":18,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/fdb619daf21b4c829de63b9ebc78859d.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/a1abe5d27a5441f599adfe662f510243.png\"},{\"id\":19,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/676b7707bb11410f8f56bc0ed2b2345c.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/7ac5b467fbf24e1d8c2de3f3332c4f54.png\"},{\"id\":20,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/0becb8cc227e4723b765bdd69a20fd4a.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/fdec85b26091486b9a89d0b8d45c3749.png\"},{\"id\":21,\"vipUrl\":\"https:\\/\\/img-blog.csdnimg.cn\\/1a6c06235ad44941b38c54cbc25a370c.png\",\"url\":\"https:\\/\\/img-blog.csdnimg.cn\\/410a06cda2d44b0c84578f88275caf70.png\"}],\"map\":{\"hot\":\"热门\",\"vip\":\"VIP\"}}";
      
      var canRead = true;
      var blogMoveHomeArticle = false;
      var showSearchText = "";
      var articleSource = 1;
      var articleReport = '{"spm":"1001.2101","extra":{"titAb":"control","lvab":"t_old","titAb2":"control"},"pid":"blog"}';
        var baiduSearchChannel = 'pc_relevant'
        var baiduSearchIdentification = '.235^v38^pc_relevant_anti_vip'
        var distRequestId = '1700390200471_02617'
        var initRewardObject = {
          giver: "qq_16425803",
          anchor: "piaoranyuji",
          articleId: "128187911",
          sign: "a7437ab629a6354693ec05eabcf4cf35",
        }
        var isLikeStatus = false;
        var isUnLikeStatus = false;
        var studyLearnWord = "";
        var isCurrentUserVip = false;
        var contentViewsHeight = 0;
        var contentViewsCount = 0;
        var contentViewsCountLimit = 5;
        var isShowConcision = true
      var isCookieConcision = false
      var isHasDirectoryModel = false
      var isShowSideModel = false
      var isShowDirectoryModel = true
      function getCookieConcision(sName){
        var allCookie = document.cookie.split("; ");
        for (var i=0; i < allCookie.length; i++){
          var aCrumb = allCookie[i].split("=");
          if (sName == aCrumb[0])
            return aCrumb[1];
        }
        return null;
      }
      if (getCookieConcision('blog_details_concision') && getCookieConcision('blog_details_concision') == 0){
        isCookieConcision = true
        isShowSideModel = true
        isShowDirectoryModel = false
      }


</script>
<div class="main_father clearfix d-flex justify-content-center" style="height:100%;">
    <div class="container clearfix" id="mainBox">
        <script>
          if (!isCookieConcision) {
            $('.main_father').removeClass('mainfather-concision')
            $('.main_father .container').removeClass('container-concision')
          } else {
            $('#mainBox').css('margin-right', '0')
          }


        </script>
        <main>
            <script type="text/javascript">
    var resourceId =  "";
    function getQueryString(name) {   
      var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象  
      var r = window.location.search.substr(1).match(reg);  //匹配目标参数
      if( r != null ) return decodeURIComponent( r[2] ); return '';   
    }
    function stripscript(s){ 
      var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~！@#￥……&*（）——|{}【】‘；：”“'。，、？%]") 
      var rs = ""; 
      for (var i = 0; i < s.length; i++) { 
        rs = rs+s.substr(i, 1).replace(pattern, ''); 
      } 
      return rs;
    }
    var blogHotWords = stripscript(getQueryString('utm_term')).length > 1 ? stripscript(getQueryString('utm_term')) : ''


            </script>
            <div class="blog-content-box">
                <div class="article-header-box">
                    <div class="article-header">
                        <div class="article-title-box">
                            <h1 class="title-article" id="articleContentId">MyBatis foreach 标签常用方法总结</h1>
                        </div>
                        <div class="article-info-box">
                            <div class="up-time">最新推荐文章于&nbsp;2023-08-18 09:22:31&nbsp;发布</div>
                            <div class="article-bar-top">
                                <img alt="" class="article-type-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/original.png">
                                <div class="bar-content">
                                    <a class="follow-nickName " href="https://blog.csdn.net/piaoranyuji" rel="noopener" target="_blank" title="长安明月">长安明月</a>
                                    <img alt="" class="article-time-img article-heard-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newCurrentTime2.png">
                                    <span class="time blog-postTime" data-time="2022-12-06 14:48:09">于 2022-12-06 14:48:09 发布</span>
                                    <div class="read-count-box">
                                        <img alt="" class="article-read-img article-heard-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/articleReadEyes2.png">
                                        <span class="read-count">阅读量1w</span>
                                        <a class="un-collection" data-report-click="{&quot;mod&quot;:&quot;popu_823&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4232&quot;,&quot;ab&quot;:&quot;new&quot;}" id="blog_detail_zk_collection">
                                            <img alt="" class="article-collect-img article-heard-img un-collect-status isdefault" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/tobarCollect2.png" style="display:inline-block">
                                            <img alt="" class="article-collect-img article-heard-img collect-status isactive" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/tobarCollectionActive2.png" style="display:none">
                                            <span class="name">收藏</span>
                                            <span class="get-collection" style="color: rgb(153, 154, 170);">
                              66
                          </span>
                                        </a>
                                        <div class="read-count-box is-like">
                                            <img alt="" class="article-read-img article-heard-img" id="is-like-imgactive-new" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newHeart2023Active.png" style="display:none">
                                            <img alt="" class="article-read-img article-heard-img" id="is-like-img-new" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newHeart2023Black.png" style="display:block">
                                            <span class="read-count" id="blog-digg-num">点赞数
                            12
                        </span>
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div class="blog-tags-box">
                                <div class="tags-box artic-tag-box">
                                    <span class="label">分类专栏：</span>
                                    <a class="tag-link" href="https://blog.csdn.net/piaoranyuji/category_10340311.html" rel="noopener" target="_blank">MyBatis</a>
                                    <a class="tag-link" href="https://blog.csdn.net/piaoranyuji/category_8759196.html" rel="noopener" target="_blank">Java</a>
                                    <a class="tag-link" href="https://blog.csdn.net/piaoranyuji/category_8759194.html" rel="noopener" target="_blank">MySQL</a>
                                    <span class="label">文章标签：</span>
                                    <a class="tag-link" data-report-click="{&quot;mod&quot;:&quot;popu_626&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4223&quot;,&quot;strategy&quot;:&quot;mybatis&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;extra&quot;:&quot;{\&quot;searchword\&quot;:\&quot;mybatis\&quot;}&quot;}" href="https://so.csdn.net/so/search/s.do?q=mybatis&amp;t=all&amp;o=vip&amp;s=&amp;l=&amp;f=&amp;viparticle=" rel="nofollow" target="_blank">mybatis</a>
                                    <a class="tag-link" data-report-click="{&quot;mod&quot;:&quot;popu_626&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4223&quot;,&quot;strategy&quot;:&quot;java&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;extra&quot;:&quot;{\&quot;searchword\&quot;:\&quot;java\&quot;}&quot;}" href="https://so.csdn.net/so/search/s.do?q=java&amp;t=all&amp;o=vip&amp;s=&amp;l=&amp;f=&amp;viparticle=" rel="nofollow" target="_blank">java</a>
                                    <a class="tag-link" data-report-click="{&quot;mod&quot;:&quot;popu_626&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4223&quot;,&quot;strategy&quot;:&quot;mysql&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;extra&quot;:&quot;{\&quot;searchword\&quot;:\&quot;mysql\&quot;}&quot;}" href="https://so.csdn.net/so/search/s.do?q=mysql&amp;t=all&amp;o=vip&amp;s=&amp;l=&amp;f=&amp;viparticle=" rel="nofollow" target="_blank">mysql</a>
                                </div>
                            </div>
                            <div class="slide-content-box">
                                <div class="article-copyright">
                                    <div class="creativecommons">
                                        版权声明：本文为博主原创文章，遵循<a href="http://creativecommons.org/licenses/by-sa/4.0/" rel="noopener" target="_blank"> CC 4.0 BY-SA </a>版权协议，转载请附上原文出处链接和本声明。
                                    </div>
                                    <div class="article-source-link">
                                        本文链接：<a href="https://blog.csdn.net/piaoranyuji/article/details/128187911" target="_blank">https://blog.csdn.net/piaoranyuji/article/details/128187911</a>
                                    </div>
                                </div>
                            </div>

                            <div class="operating">
                                <a class="href-article-edit slide-toggle">版权</a>
                            </div>
                        </div>
                    </div>
                </div>

                <div id="blogColumnPayAdvert">
                    <div class="column-group">
                        <div class="column-group-item column-group0 ">
                            <div class="item-l">
                                <a class="item-target" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.6332&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10340311.html" target="_blank" title="MyBatis">
                                    <img alt="" class="item-target" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756927.png">
                                    <span class="title item-target">
                                <span>
                                <span class="tit">MyBatis</span>
                                    <span class="dec more">同时被 3 个专栏收录<img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newArrowDown1White.png"></span>
                                </span>
                            </span>
                                </a>
                            </div>
                            <div class="item-m">
                                <span>4 篇文章</span>
                                <span>0 订阅</span>
                            </div>
                            <div class="item-r">
                                <a class="item-target article-column-bt articleColumnFreeBt" data-id="10340311">订阅专栏</a>
                            </div>
                        </div>
                        <div class="column-group-item column-group1 ">
                            <div class="item-l">
                                <a class="item-target" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.6332&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759196.html" target="_blank" title="Java">
                                    <img alt="" class="item-target" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756757.png">
                                    <span class="title item-target">
                                <span>
                                <span class="tit">Java</span>
                                </span>
                            </span>
                                </a>
                            </div>
                            <div class="item-m">
                                <span>61 篇文章</span>
                                <span>3 订阅</span>
                            </div>
                            <div class="item-r">
                                <a class="item-target article-column-bt articleColumnFreeBt" data-id="8759196">订阅专栏</a>
                            </div>
                        </div>
                        <div class="column-group-item column-group2 ">
                            <div class="item-l">
                                <a class="item-target" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.6332&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759194.html" target="_blank" title="MySQL">
                                    <img alt="" class="item-target" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756913.png">
                                    <span class="title item-target">
                                <span>
                                <span class="tit">MySQL</span>
                                </span>
                            </span>
                                </a>
                            </div>
                            <div class="item-m">
                                <span>31 篇文章</span>
                                <span>0 订阅</span>
                            </div>
                            <div class="item-r">
                                <a class="item-target article-column-bt articleColumnFreeBt" data-id="8759194">订阅专栏</a>
                            </div>
                        </div>
                    </div>
                </div>
                <article class="baidu_pl">
                    <div class="article_content clearfix" id="article_content">
                        <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/kdoc_html_views-1a98987dfd.css" rel="stylesheet">
                        <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/ck_htmledit_views-044f2cf1dc.css" rel="stylesheet">
                        <div class="markdown_views prism-atom-one-light" id="content_views">
                            <svg style="display: none;" xmlns="http://www.w3.org/2000/svg">
                                <path d="M5,0 0,2.5 5,5z" id="raphael-marker-block" stroke-linecap="round" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path>
                            </svg>
                            <h6><a id="_0"></a>一、前言</h6>
                            <p>  在 MyBatis 中，常常会遇到集合类型的参数，虽然我们可以通过 <a class="hl hl-1" data-pretit="ognl" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.7020&quot;,&quot;dest&quot;:&quot;https://so.csdn.net/so/search?q=OGNL&amp;spm=1001.2101.3001.7020&quot;,&quot;extra&quot;:&quot;{\&quot;searchword\&quot;:\&quot;OGNL\&quot;}&quot;}" data-tit="OGNL" href="https://so.csdn.net/so/search?q=OGNL&amp;spm=1001.2101.3001.7020" target="_blank">OGNL</a> 表达式来访问集合的某一个元素，但是 OGNL 表达式无法遍历集合。foreach 标签就是专门用来解决这类问题的，foreach 标签可以用来遍历数组、列表和 Map 等集合参数，实现批量操作或一些简单 SQL 操作。</p>
                            <h6><a id="foreach__3"></a>二、foreach 元素属性简介</h6>
                            <p>  foreach 元素的属性主要有 item，index，open，separator，close，collection。各属性含义如下所示。</p>
                            <h6><a id="21_item_5"></a>2.1 item</h6>
                            <p>  集合中元素迭代时的别名，该参数为必选。</p>
                            <h6><a id="22_index_8"></a>2.2 index</h6>
                            <p>  在 list 和数组中，index 是元素的序号；在 map 中，index 是元素的 key。该参数可选。</p>
                            <h6><a id="23_open_10"></a>2.3 open</h6>
                            <p>  foreach 代码的开始符号，一般是 ”(“，和 close=“)” 合用。常用在 in()，values() 时。该参数可选。</p>
                            <h6><a id="24_separator_12"></a>2.4 separator</h6>
                            <p>  元素之间的分隔符，例如在 in() 的时候，separator=“,” 会自动在元素中间用 “,“ 隔开，避免手动输入逗号导致 SQL 错误，如 in(1, 2,) 这样。该参数可选。</p>
                            <h6><a id="25_close_14"></a>2.5 close</h6>
                            <p>  foreach 代码的关闭符号，一般是 ”)“，和 open=“(” 合用。常用在 in()，values()时。该参数可选。</p>
                            <h6><a id="26_collection_16"></a>2.6 collection</h6>
                            <p>  要被 foreach 标签循环解析的对象。</p>
                            <p>  foreach 标签的 collection 属性在接受参数名时，有两种情况：</p>
                            <ul>
                                <li><p>匿名参数<br> 当在 java 方法中没有通过 @Param 注解指定参数名时，列表类型默认参数名为 ”list“，数组类型默认参数名为 ”array“，Map 对象没有默认值。</p></li>
                                <li><p>具名参数<br> java 方法中使用了 @Param 注解指定了参数名称，则 foreach 中的 collection 属性必须为参数名。</p></li>
                            </ul>
                            <p>  在作为入参时可以使用 @Param(“keyName”) 来设置该键值，设置 keyName 后，list、array 将会失效。除了入参这种情况外，还有一种是作为参数对象的某个字段，例子如下。如果 User 有属性 List ids。入参是 User 对象，那么这个collection = “ids”。如果 User 有属性 Ids ids，其中 Ids 是个对象，Ids 有个属性 List id，入参是 User 对象，那么 collection = “ids.id”。</p>
                            <p>  注意点：在使用 foreach 的时候，最关键的就是 collection 属性，该属性是必须指定的，但是在不同情况下，该属性的值是不一样的，主要有以下 3 种情况（未通过 @Param 指定别名时）。</p>
                            <ul>
                                <li>如果传入的是单参数且参数类型是一个 List 的时候，collection 属性值为 ”list“。</li>
                                <li>如果传入的是单参数且参数类型是一个 array 数组的时候，collection 的属性值为 ”array“。</li>
                                <li>如果传入的参数是多个的时候，我们可以把它们封装成一个 Map，当然单参数也可以封装成 map。实际上如果你在传入参数的时候，在 MyBatis 里面也是会把它封装成一个 Map 的，map 的 key 就是参数名，所以这个时候 collection 属性值就是传入的 List 或 array 对象在自己封装的 map 里面的 key。</li>
                            </ul>
                            <h6><a id="____35"></a>三、#{} 与 ${} 的区别</h6>
                            <p>  在使用参数的过程中，会遇到 #{} 与 ${} 的问题，因此简单总结下两者之间的区别。</p>
                            <ol>
                                <li><p>${param} 传递的参数会被当成 SQL 语句中的一部分，比如传递表名，字段名，字段类型等数据。<br> 例如，传入值为 id，order by ${param} 则解析成 SQL：order by id。</p></li>
                                <li><p>#{parm} 传入的数据都当成一个字符串，会对自动传入的数据加一个双引号。<br> 例如，传入值为 id，select * from table where name = #{param} 则解析成 SQL：select * from table where name = ? （其中问号在执行时传入值 “id”）。</p></li>
                            </ol>
                            <p>  为了安全，能用 # 的地方就用 # 方式传参，这样可以有效的防止 SQL 注入攻击。</p>
                            <p>  官方说明：mybatis 在处理 #{} 时，会将 SQL 中的 #{} 替换为 “?”，调用 PreparedStatement 的 set 方法来赋值；mybatis 在处理 ${} 时，就是把 ${} 替换成变量的值。使用 #{} 可以有效的防止 SQL 注入，提高系统安全性。</p>
                            <h6><a id="_48"></a>四、实例实战</h6>
                            <p>  本文以如下几个例子简单总结下 foreach 是如何<a class="hl hl-1" data-pretit="遍历列表" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.7020&quot;,&quot;dest&quot;:&quot;https://so.csdn.net/so/search?q=%E9%81%8D%E5%8E%86%E5%88%97%E8%A1%A8&amp;spm=1001.2101.3001.7020&quot;,&quot;extra&quot;:&quot;{\&quot;searchword\&quot;:\&quot;遍历列表\&quot;}&quot;}" data-tit="遍历列表" href="https://so.csdn.net/so/search?q=%E9%81%8D%E5%8E%86%E5%88%97%E8%A1%A8&amp;spm=1001.2101.3001.7020" target="_blank">遍历列表</a>、数组和 Map 的。</p>
                            <h6><a id="41__ListltStringgt__51"></a>4.1 遍历 List&lt;String&gt; 列表</h6>
                            <p>  <strong>Java 层接口</strong></p>
                            <pre class="set-code-show prettyprint" data-index="0"><code class="prism language-java has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;"><span class="token class-name">List</span><span class="token generics"><span class="token punctuation">&lt;</span><span class="token class-name">Rule</span><span class="token punctuation">&gt;</span></span> <span class="token function">selectRulesByList</span><span class="token punctuation">(</span><span class="token class-name">List</span><span class="token generics"><span class="token punctuation">&lt;</span><span class="token class-name">String</span><span class="token punctuation">&gt;</span></span> ids<span class="token punctuation">)</span><span class="token punctuation">;</span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li></ul></pre>
                            <p>  <strong>XML</strong></p>
                            <pre class="set-code-show prettyprint" data-index="1"><code class="prism language-xml has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;">  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>select</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>selectRulesByList<span class="token punctuation">"</span></span> <span class="token attr-name">resultMap</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>BaseResultMap<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
    SELECT
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>include</span> <span class="token attr-name">refid</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Base_Column_List<span class="token punctuation">"</span></span> <span class="token punctuation">/&gt;</span></span>
    FROM tbl_test_rule WHERE rule_id IN
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>foreach</span> <span class="token attr-name">collection</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>list<span class="token punctuation">"</span></span> <span class="token attr-name">open</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>(<span class="token punctuation">"</span></span> <span class="token attr-name">close</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>)<span class="token punctuation">"</span></span> <span class="token attr-name">separator</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>,<span class="token punctuation">"</span></span> <span
            class="token attr-name">item</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>item<span class="token punctuation">"</span></span> <span class="token attr-name">index</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>index<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
      #{item}
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>foreach</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>select</span><span class="token punctuation">&gt;</span></span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li></ul></pre>
                            <p>  <strong>运行时 SQL 语句</strong></p>
                            <pre class="set-code-show prettyprint" data-index="2"><code class="prism language-bash has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;"><span class="token operator">==</span><span class="token operator">&gt;</span>  Preparing: SELECT rule_id, rule_name, rule_type FROM tbl_test_rule WHERE rule_id IN <span class="token punctuation">(</span> ? , ? <span class="token punctuation">)</span>
<span class="token operator">==</span><span class="token operator">&gt;</span> Parameters: <span class="token number">10001</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">20002</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>
<span class="token operator">&lt;=</span><span class="token operator">=</span>      Total: <span class="token number">2</span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li></ul></pre>
                            <h6><a id="42__ListltObjectgt__78"></a>4.2 遍历 List&lt;Object&gt; 列表</h6>
                            <p>  项目中定义了一个实体类 Rule，在批量插入时需要遍历 List&lt;Rule&gt;，实现方式见下文。</p>
                            <p>  <strong>Java 层接口</strong></p>
                            <pre class="set-code-show prettyprint" data-index="3"><code class="prism language-java has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;"><span class="token keyword">int</span> <span class="token function">insertRules</span><span class="token punctuation">(</span><span class="token annotation punctuation">@Param</span><span class="token punctuation">(</span><span class="token string">"rules"</span><span class="token punctuation">)</span> <span class="token class-name">List</span><span class="token generics"><span class="token punctuation">&lt;</span><span class="token class-name">Rule</span><span class="token punctuation">&gt;</span></span> rules<span class="token punctuation">)</span><span class="token punctuation">;</span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li></ul></pre>
                            <p>  <strong>XML</strong></p>
                            <pre class="set-code-show prettyprint" data-index="4"><code class="prism language-xml has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;">  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>insert</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>insertRules<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
    INSERT INTO tbl_test_rule (rule_id, rule_name, rule_type) VALUES
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>foreach</span> <span class="token attr-name">collection</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>rules<span class="token punctuation">"</span></span> <span class="token attr-name">separator</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>,<span class="token punctuation">"</span></span> <span class="token attr-name">item</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>rule<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
      (#{rule.ruleId}, #{rule.ruleName}, #{rule.ruleType})
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>foreach</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>insert</span><span class="token punctuation">&gt;</span></span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li></ul></pre>
                            <p>  <strong>运行时 SQL 语句</strong></p>
                            <pre class="set-code-show prettyprint" data-index="5"><code class="prism language-bash has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;"><span class="token operator">==</span><span class="token operator">&gt;</span>  Preparing: INSERT INTO tbl_test_rule <span class="token punctuation">(</span>rule_id, rule_name, rule_type<span class="token punctuation">)</span> VALUES <span class="token punctuation">(</span>?, ?, ?<span class="token punctuation">)</span> , <span class="token punctuation">(</span>?, ?, ?<span class="token punctuation">)</span>
<span class="token operator">==</span><span class="token operator">&gt;</span> Parameters: ruleId1<span class="token punctuation">(</span>String<span class="token punctuation">)</span>, ruleName1<span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">1</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>, ruleId2<span class="token punctuation">(</span>String<span class="token punctuation">)</span>, ruleName2<span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">2</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>
<span class="token operator">&lt;=</span><span class="token operator">=</span>    Updates: <span class="token number">2</span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li></ul></pre>
                            <h6><a id="43__104"></a>4.3 遍历数组</h6>
                            <p>  <strong>Java 层接口</strong></p>
                            <pre class="set-code-show prettyprint" data-index="6"><code class="prism language-java has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;"><span class="token class-name">List</span><span class="token generics"><span class="token punctuation">&lt;</span><span class="token class-name">Rule</span><span class="token punctuation">&gt;</span></span> <span class="token function">selectRulesByArray</span><span class="token punctuation">(</span><span class="token class-name">String</span><span class="token punctuation">[</span><span class="token punctuation">]</span> ids<span class="token punctuation">)</span><span class="token punctuation">;</span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li></ul></pre>
                            <p>  如果 ids 参数使用 @Param 注解指定了参数名称，则 foreach 标签中的 collection 属性必须为该名称；但若未指定名称，则在 foreach 标签中使用默认数组名称 array，如下所示</p>
                            <p>  <strong>XML</strong></p>
                            <pre class="set-code-show prettyprint" data-index="7"><code class="prism language-xml has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;">  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>select</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>selectRulesByArray<span class="token punctuation">"</span></span> <span class="token attr-name">resultMap</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>BaseResultMap<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
    SELECT
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>include</span> <span class="token attr-name">refid</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Base_Column_List<span class="token punctuation">"</span></span> <span class="token punctuation">/&gt;</span></span>
    FROM tbl_test_rule WHERE rule_id IN
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>foreach</span> <span class="token attr-name">collection</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>array<span class="token punctuation">"</span></span> <span class="token attr-name">open</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>(<span class="token punctuation">"</span></span> <span class="token attr-name">close</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>)<span class="token punctuation">"</span></span> <span class="token attr-name">separator</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>,<span class="token punctuation">"</span></span> <span
            class="token attr-name">item</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>item<span class="token punctuation">"</span></span> <span class="token attr-name">index</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>index<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
      #{item}
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>foreach</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>select</span><span class="token punctuation">&gt;</span></span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li></ul></pre>
                            <p>  <strong>运行时 SQL 语句</strong></p>
                            <pre class="set-code-show prettyprint" data-index="8"><code class="prism language-bash has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;"><span class="token operator">==</span><span class="token operator">&gt;</span>  Preparing: SELECT rule_id, rule_name, rule_type FROM tbl_test_rule WHERE rule_id IN <span class="token punctuation">(</span> ? , ? <span class="token punctuation">)</span>
<span class="token operator">==</span><span class="token operator">&gt;</span> Parameters: <span class="token number">10001</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">20002</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>
<span class="token operator">&lt;=</span><span class="token operator">=</span>      Total: <span class="token number">2</span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li></ul></pre>
                            <h6><a id="44__Map__insert_into__on_duplicate_key_update_132"></a>4.4 遍历 Map 实现 insert into … on duplicate key update</h6>
                            <p>  数据库表 tbl_test_discount，联合主键（cert_no, rule_id, cycle_id），存储了不同用户不同周期下的折扣金额。请求参数 Map 中存储了某一用户不同规则（key 为不同的 rule_id 值）和各个规则下的折扣值（value 为 dis_sum），如下方 Java 接口定义。需要实现：当数据库中无主键记录时，将记录插入数据库；如数据库中存在主键记录时，更新折扣值，将折扣值累加计算（即实现 insert into … on duplicate key update 操作）。过程示例如下。</p>
                            <p>  <strong>Java 层接口</strong></p>
                            <pre class="set-code-show prettyprint" data-index="9"><code class="prism language-java has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;">    <span class="token keyword">int</span> <span class="token function">saveOrUpd</span><span class="token punctuation">(</span><span class="token annotation punctuation">@Param</span><span class="token punctuation">(</span>value <span class="token operator">=</span> <span class="token string">"certNo"</span><span class="token punctuation">)</span> <span class="token class-name">String</span> certNo<span class="token punctuation">,</span>
                  <span class="token annotation punctuation">@Param</span><span class="token punctuation">(</span>value <span class="token operator">=</span> <span class="token string">"cycleId"</span><span class="token punctuation">)</span> <span class="token class-name">String</span> cycleId<span class="token punctuation">,</span>
                  <span class="token annotation punctuation">@Param</span><span class="token punctuation">(</span>value <span class="token operator">=</span> <span class="token string">"params"</span><span class="token punctuation">)</span> <span class="token class-name">Map</span> map<span class="token punctuation">)</span><span class="token punctuation">;</span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li></ul></pre>
                            <p>  使用 foreach 标签遍历 Map 时，collection 属性值为 @param 注解指定的参数名，即 params，且 item 是 Map 的键值，index 是键名。</p>
                            <p>  <strong>XML</strong></p>
                            <pre class="set-code-show prettyprint" data-index="10"><code class="prism language-xml has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;">  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>update</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>saveOrUpd<span class="token punctuation">"</span></span> <span class="token attr-name">parameterType</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>java.util.Map<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>foreach</span> <span class="token attr-name">collection</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>params<span class="token punctuation">"</span></span> <span class="token attr-name">index</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>key<span class="token punctuation">"</span></span> <span class="token attr-name">item</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>value<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
      insert into tbl_test_discount (cert_no, rule_id, cycle_id, dis_sum) values
      (#{certNo}, #{key}, #{cycleId}, #{value}) on duplicate key update dis_sum = dis_sum + #{value};
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>foreach</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>update</span><span class="token punctuation">&gt;</span></span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li></ul></pre>
                            <p>  <strong>mybatis 设置允许批量更新</strong></p>
                            <p>  mybatis 会根据上述 XML 文件的配置，动态生成多条 SQL。要让 mybatis 成功执行多条语句，须开启允许批量查询设置，即在 jdbc-url 连接信息中添加 <strong>&amp;allowMultiQueries=true</strong>，如下所示。</p>
                            <pre class="set-code-show prettyprint" data-index="11"><code class="prism language-xml has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;">spring.datasource.jdbc-url=jdbc:mysql://localhost:3306/testdb?characterEncoding=UTF-8&amp;zeroDateTimeBehavior=convertToNull&amp;useSSL=false&amp;allowMultiQueries=true
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li></ul></pre>
                            <p>  MySQL 连接数据库时，添加语句 <code>&amp;allowMultiQueries=true</code> 的作用：可以在 SQL 语句后携带分号，实现多语句执行；可以执行批处理，同时发出多个 SQL 语句。</p>
                            <p>  <strong>运行时 SQL 语句</strong></p>
                            <pre class="set-code-show prettyprint" data-index="12"><code class="prism language-bash has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;"><span class="token operator">==</span><span class="token operator">&gt;</span>  Preparing: insert into tbl_test_discount <span class="token punctuation">(</span>cert_no, rule_id, cycle_id, dis_sum<span class="token punctuation">)</span> values <span class="token punctuation">(</span>?, ?, ?, ?<span class="token punctuation">)</span> on duplicate key update dis_sum <span class="token operator">=</span> dis_sum + ?<span class="token punctuation">;</span> insert into tbl_test_discount <span class="token punctuation">(</span>cert_no, rule_id, cycle_id, dis_sum<span class="token punctuation">)</span> values <span class="token punctuation">(</span>?, ?, ?, ?<span class="token punctuation">)</span> on duplicate key update dis_sum <span class="token operator">=</span> dis_sum + ?<span
                                    class="token punctuation">;</span> insert into tbl_test_discount <span class="token punctuation">(</span>cert_no, rule_id, cycle_id, dis_sum<span class="token punctuation">)</span> values <span class="token punctuation">(</span>?, ?, ?, ?<span class="token punctuation">)</span> on duplicate key update dis_sum <span class="token operator">=</span> dis_sum + ?<span class="token punctuation">;</span> insert into tbl_test_discount <span class="token punctuation">(</span>cert_no, rule_id, cycle_id, dis_sum<span class="token punctuation">)</span> values <span class="token punctuation">(</span>?, ?, ?, ?<span class="token punctuation">)</span> on duplicate key update dis_sum <span class="token operator">=</span> dis_sum + ?<span class="token punctuation">;</span>
<span class="token operator">==</span><span class="token operator">&gt;</span> Parameters: testCertNo1<span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">30001</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">202212</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">225</span><span class="token punctuation">(</span>Integer<span class="token punctuation">)</span>, <span class="token number">225</span><span class="token punctuation">(</span>Integer<span class="token punctuation">)</span>, testCertNo2<span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">20002</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">202212</span><span
                                        class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">385</span><span class="token punctuation">(</span>Integer<span class="token punctuation">)</span>, <span class="token number">385</span><span class="token punctuation">(</span>Integer<span class="token punctuation">)</span>, testCertNo3<span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">20001</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">202212</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">553</span><span class="token punctuation">(</span>Integer<span class="token punctuation">)</span>, <span class="token number">553</span><span class="token punctuation">(</span>Integer<span class="token punctuation">)</span>, testCertNo4<span
                                        class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">10001</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">202212</span><span class="token punctuation">(</span>String<span class="token punctuation">)</span>, <span class="token number">300</span><span class="token punctuation">(</span>Integer<span class="token punctuation">)</span>, <span class="token number">300</span><span class="token punctuation">(</span>Integer<span class="token punctuation">)</span>
<span class="token operator">&lt;=</span><span class="token operator">=</span>    Updates: <span class="token number">1</span>
<div class="hljs-button {2}" data-title="复制"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li></ul></pre>
                            <p>  foreach 标签是使用非常广泛的一个标签，当使用 SQL 进行批量插入、查询时都可能使用到它。列表遍历的使用最为广泛，数组和 Map 则相对较少。</p>
                            <h6><a id="_179"></a>文章参考</h6>
                            <ul>
                                <li><a href="https://book.itxueyuan.com/GqXP/6XPod">MyBatis foreach </a></li>
                                <li><a href="https://blog.csdn.net/it_lxg123/article/details/121370931">Mybatis之foreach遍历Map实现</a></li>
                            </ul>
                        </div>
                        <div>
                            <div></div>
                        </div>
                        <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/markdown_views-98b95bb57c.css" rel="stylesheet">
                        <link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/style-c216769e99.css" rel="stylesheet">
                    </div>
                    <div id="treeSkill" style="display: block;">
                        <div class="skill-tree-box">
                            <div class="skill-tree-head">文章知识点与官方知识档案匹配，可进一步学习相关知识</div>
                            <div class="skill-tree-body">
                                <div class="skill-tree-item"><span class="skill-tree-href"><a data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.6866&quot;,&quot;dest&quot;:&quot;https://edu.csdn.net/skill/java/java-9c8fa6eb2b5a4d7e93adf961c17e052b?utm_source=csdn_ai_skill_tree_blog&quot;}" href="https://edu.csdn.net/skill/java/java-9c8fa6eb2b5a4d7e93adf961c17e052b?utm_source=csdn_ai_skill_tree_blog" target="_blank">Java技能树</a><i></i><a data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.6866&quot;,&quot;dest&quot;:&quot;https://edu.csdn.net/skill/java/java-9c8fa6eb2b5a4d7e93adf961c17e052b?utm_source=csdn_ai_skill_tree_blog&quot;}" href="https://edu.csdn.net/skill/java/java-9c8fa6eb2b5a4d7e93adf961c17e052b?utm_source=csdn_ai_skill_tree_blog" target="_blank">控制执行流程</a><i></i><a
                                        data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.6866&quot;,&quot;dest&quot;:&quot;https://edu.csdn.net/skill/java/java-9c8fa6eb2b5a4d7e93adf961c17e052b?utm_source=csdn_ai_skill_tree_blog&quot;}" href="https://edu.csdn.net/skill/java/java-9c8fa6eb2b5a4d7e93adf961c17e052b?utm_source=csdn_ai_skill_tree_blog" target="_blank">for</a></span><span class="skill-tree-con"><span class="skill-tree-count">134910</span> 人正在系统学习中</span></div>
                            </div>
                        </div>
                    </div>
                </article>
                <script>
  $(function() {
    setTimeout(function () {
      var mathcodeList = document.querySelectorAll('.htmledit_views img.mathcode');
      if (mathcodeList.length > 0) {
        for (let i = 0; i < mathcodeList.length; i++) {
          if (mathcodeList[i].naturalWidth === 0 || mathcodeList[i].naturalHeight === 0) {
            var alt = mathcodeList[i].alt;
            alt = '\\(' + alt + '\\)';
            var curSpan = $('<span class="img-codecogs"></span>');
            curSpan.text(alt);
            $(mathcodeList[i]).before(curSpan);
            $(mathcodeList[i]).remove();
          }
        }
        MathJax.Hub.Queue(["Typeset",MathJax.Hub]);
      }
    }, 1000)
  });


                </script>
            </div>
            <div class="directory-boxshadow-dialog" style="display:none;">
                <div class="directory-boxshadow-dialog-box">
                </div>
                <div class="vip-limited-time-offer-box">
                    <div class="vip-limited-time-offer-content">
                        <img class="limited-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/vip-limited-close.png">
                        <div class="limited-box">
                            <span class="limited-num"></span>
                            <span class="limited-quan"> 优惠劵</span>
                        </div>
                        <div class="limited-time-box">
                            <span class="time-hour"></span>
                            <span class="time-minite"></span>
                            <span class="time-second"></span>
                        </div>
                        <a class="limited-time-btn" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.9621&quot;}" data-report-query="spm=1001.2101.3001.9621" href="https://mall.csdn.net/vip"></a>
                    </div>
                </div>
            </div>
            <div class="more-toolbox-new" id="toolBarBox">
                <div class="left-toolbox" style="position: relative; z-index: 999; left: 0px; bottom: 0px; width: 1010px;">
                    <div class="toolbox-left">
                        <div class="profile-box">
                            <a class="profile-href" href="https://blog.csdn.net/piaoranyuji" target="_blank"><img class="profile-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/default.jpg!1">
                                <span class="profile-name">
                  长安明月
                </span>
                            </a>
                        </div>
                        <div class="profile-attend">

                            <a class="tool-attend tool-bt-button tool-bt-attend" href="javascript:;">关注</a>
                            <a class="tool-item-follow active-animation" style="display:none;">关注</a>
                        </div>
                    </div>
                    <div class="toolbox-middle">
                        <ul class="toolbox-list">
                            <li class="tool-item tool-item-size tool-active is-like" id="is-like">
                                <a class="tool-item-href">
                                    <img alt="" class="animation-dom active-animation" id="is-like-imgactive-animation-like" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/tobarThumbUpactive.png" style="display:none;">
                                    <img alt="" class="isactive" id="is-like-imgactive" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newHeart2021Active.png" style="display:none">
                                    <img alt="" class="isdefault" id="is-like-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newHeart2021Black.png" style="display:block">
                                    <span class="count " id="spanCount" style="color: rgb(153, 154, 170);">
                    12
                </span>
                                </a>
                                <div class="tool-hover-tip"><span class="text space">点赞</span></div>
                            </li>
                            <li class="tool-item tool-item-size tool-active is-unlike" id="is-unlike">
                                <a class="tool-item-href">
                                    <img alt="" class="isactive" id="is-unlike-imgactive" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newUnHeart2021Active.png" style="margin-right:0px;display:none">
                                    <img alt="" class="isdefault" id="is-unlike-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newUnHeart2021Black.png" style="margin-right:0px;display:block">
                                    <span class="count " id="unlikeCount" style="color: rgb(153, 154, 170);"></span>
                                </a>
                                <div class="tool-hover-tip"><span class="text space">踩</span></div>
                            </li>
                            <li class="tool-item tool-item-size tool-active is-collection ">
                                <a class="tool-item-href" data-report-click="{&quot;mod&quot;:&quot;popu_824&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4130&quot;,&quot;ab&quot;:&quot;new&quot;}" href="javascript:;">
                                    <img alt="" class="animation-dom active-animation" id="is-collection-img-collection" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/tobarCollectionActive.png" style="display:none">
                                    <img alt="" class="isdefault" id="is-collection-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newCollectBlack.png" style="display:block">
                                    <img alt="" class="isactive" id="is-collection-imgactive" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newCollectActive.png" style="display:none">
                                    <span class="count get-collection" data-num="66" id="get-collection" style="color: rgb(153, 154, 170);">
                    66
                </span>
                                </a>
                                <div class="tool-hover-tip collect">
                                    <div class="collect-operate-box">
                  <span class="collect-text" id="is-collection">
                    收藏
                  </span>
                                    </div>
                                </div>
                                <div class="tool-active-list">
                                    <div class="text">
                                        觉得还不错?
                                        <span class="collect-text" id="tool-active-list-collection">
                    一键收藏
                  </span>
                                        <img alt="" id="tool-active-list-close" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/collectionCloseWhite.png">
                                    </div>
                                </div>
                            </li>
                            <li class="tool-item tool-item-size tool-active tool-item-reward">
                                <a class="tool-item-href" data-report-click="{&quot;mod&quot;:&quot;popu_830&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4237&quot;,&quot;dest&quot;:&quot;&quot;,&quot;ab&quot;:&quot;new&quot;}" href="javascript:;">
                                    <img alt="打赏" class="isdefault reward-bt" id="rewardBtNew" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newRewardBlack.png">
                                    <span class="count"></span>
                                </a>
                                <div class="tool-hover-tip"><span class="text space">打赏</span></div>
                            </li>
                            <li class="tool-item tool-item-size tool-active tool-item-comment">

                                <a class="tool-item-href go-side-comment" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.7009&quot;}">
                                    <img alt="" class="isdefault" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newComment2021Black.png">
                                    <span class="count">0</span>
                                </a>
                                <div class="tool-hover-tip"><span class="text space">评论</span></div>
                            </li>
                            <li class="tool-item tool-item-bar">
                            </li>
                            <li class="tool-item tool-item-size tool-active tool-QRcode" data-type="article" id="tool-share">
                                <a class="tool-item-href" data-report-click="{&quot;mod&quot;:&quot;1582594662_002&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4129&quot;,&quot;ab&quot;:&quot;new&quot;}" href="javascript:;">
                                    <img alt="" class="isdefault" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newShareBlack.png">
                                </a>
                                <div class="QRcode" id="tool-QRcode">
                                    <div class="share-bg-icon icon1 icon5" id="shareBgIcon"></div>
                                    <div class="share-bg-box">
                                        <div class="share-content">
                                            <img alt="" class="share-avatar" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/default.jpg!1">
                                            <div class="share-tit">
                                                MyBatis foreach 标签常用方法总结
                                            </div>
                                            <div class="share-dec">
                                                  在 MyBatis 中，常常会遇到集合类型的参数，虽然我们可以通过 OGNL 表达式来访问集合的某一个元素，但是 OGNL 表达式无法遍历集合。foreach 标签就是专门用来解决这类问题的，foreach 标签可以用来遍历数组、列表和 Map 等集合参数，实现批量操作或一些简单 SQL 操作。  foreach 元素的属性主要有 item，index，open，separator，close，collection。各属性含义如下所示。  集合中元素迭代时的别名，该参数为必选。  在 list 和数组中
                                            </div>
                                            <a class="url" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.7493&quot;}" id="copyPosterUrl">复制链接</a>
                                        </div>
                                        <div class="share-code">
                                            <div class="share-code-box" id="shareCode">
                                                <canvas height="65" width="65"></canvas>
                                                <img style="display: none;"></div>
                                            <div class="share-code-text">扫一扫</div>
                                        </div>
                                    </div>
                                    <div class="share-code-type"><p class="hot" data-type="hot"><span>热门</span></p>
                                        <p class="vip" data-type="vip"><span>VIP</span></p></div>
                                </div>
                            </li>
                        </ul>
                    </div>
                    <div class="toolbox-right">
                        <div class="tool-directory">
                            <a class="bt-columnlist-show" data-free="true" data-id="10340311" data-img="https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64" data-join="false" data-oldprice="0" data-people="0" data-price="0" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.6334&quot;,&quot;extend1&quot;:&quot;专栏目录&quot;}" data-status="true" data-studysubscribe="false" data-studyvip="false" data-subscribe="false" data-sum="4" data-title="MyBatis" data-url="https://blog.csdn.net/piaoranyuji/category_10340311.html">专栏目录</a>
                        </div>
                    </div>
                </div>
            </div>
            <script crossorigin="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/qrcode-7c90a92189.min.js.下载" type="text/javascript"></script>
            <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/saved_resource(2)" type="text/javascript"></script>
            <script crossorigin="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/csdn-login-box.js.下载" type="text/javascript"></script>
            <script crossorigin="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/collection-box.js.下载" type="text/javascript"></script>
            <div class="first-recommend-box recommend-box ">
                <div class="recommend-item-box type_blog clearfix" data-url="https://blog.csdn.net/m0_61916154/article/details/130109648">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6661.1&quot;,&quot;mod&quot;:&quot;popu_871&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant_t0.none-task-blog-2~default~CTRLIST~Rate-1-130109648-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;1&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/m0_61916154/article/details/130109648&quot;}"
                                   data-report-query="spm=1001.2101.3001.6661.1&amp;utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-130109648-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-130109648-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=1" href="https://blog.csdn.net/m0_61916154/article/details/130109648"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>MyBatis</em>＜<em>foreach</em>＞<em>标签</em>的<em>用法</em>及多种循环方式</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6661.1&amp;utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-130109648-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-130109648-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=1" href="https://blog.csdn.net/m0_61916154" target="_blank"><span class="blog-title">19.2.04.157N的博客</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">04-12</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					957
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6661.1&quot;,&quot;mod&quot;:&quot;popu_871&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant_t0.none-task-blog-2~default~CTRLIST~Rate-1-130109648-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;1&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/m0_61916154/article/details/130109648&quot;}"
                               data-report-query="spm=1001.2101.3001.6661.1&amp;utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-130109648-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-130109648-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=1" href="https://blog.csdn.net/m0_61916154/article/details/130109648"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1"><em>MyBatis</em>＜<em>foreach</em>＞<em>标签</em>的<em>用法</em>及多种循环方式</div>
                            </a>
                        </div>
                    </div>
                </div>
            </div>
            <script async="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/pc_wap_commontools-094b8ec121.min.js.下载" type="text/javascript"></script>
            <div class="second-recommend-box recommend-box ">
                <div class="recommend-item-box type_download clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.1&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~CTRLIST~Paid-1-12771194-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;1&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Paid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38504170/12771194&quot;}" data-url="https://download.csdn.net/download/weixin_38504170/12771194">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.1&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~CTRLIST~Paid-1-12771194-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;1&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Paid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38504170/12771194&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.1&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EPaid-1-12771194-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EPaid-1-12771194-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=2" href="https://download.csdn.net/download/weixin_38504170/12771194"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>mybatis</em> 中 <em>foreach</em> collection的<em>用法</em>小结(三种)</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info display-flex">
                                    <span class="info-block">08-29</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.1&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~CTRLIST~Paid-1-12771194-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;1&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Paid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38504170/12771194&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.1&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EPaid-1-12771194-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EPaid-1-12771194-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=2" href="https://download.csdn.net/download/weixin_38504170/12771194"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">主要介绍了<em>mybatis</em> 中 <em>foreach</em> collection的<em>用法</em>小结(三种),需要的朋友可以参考下</div>
                            </a>
                        </div>
                    </div>
                </div>
            </div>
            <a id="commentBox" name="commentBox"></a>
            <div class="comment-box comment-box-new2 login-comment-box-new comment-box-nostyle" id="pcCommentBox" style="display:none">
                <div class="has-comment" style="display: none;">
                    <div class="one-line-box">
                        <div class="has-comment-tit go-side-comment">
                            <span class="count">0</span>&nbsp;条评论
                        </div>
                        <div class="has-comment-con comment-operate-item"></div>
                        <a class="has-comment-bt-right go-side-comment focus">写评论</a>
                    </div>
                </div>
            </div>
            <div class="recommend-box insert-baidu-box recommend-box-style ">
                <div class="recommend-item-box no-index" style="display:none"></div>
                <div class="recommend-item-box baiduSearch clearfix" data-report-view="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0-99403441-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;0\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.1&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_30856725/article/details/99403441&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;0&quot;}" data-type="blog" data-url="https://blog.csdn.net/weixin_30856725/article/details/99403441">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box"><a class="tit" data-report-click="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0-99403441-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;0\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.1&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_30856725/article/details/99403441&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;0&quot;}" data-report-query="utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0-99403441-blog-128187911.235^v38^pc_relevant_anti_vip&amp;spm=1001.2101.3001.4242.1&amp;utm_relevant_index=3"
                                                      href="https://blog.csdn.net/weixin_30856725/article/details/99403441"
                                                      target="_blank">
                                <div class="left ellipsis-online ellipsis-online-1"><em>MyBatis</em> <em>foreach</em><em>标签</em>的<em>用法</em></div>
                            </a></div>
                            <div class="info-box display-flex">
                                <div class="info display-flex"><span class="info-block">11-16</span></div>
                            </div>
                        </div>
                        <div class="desc-box"><a data-report-click="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0-99403441-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;0\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.1&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_30856725/article/details/99403441&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;0&quot;}" data-report-query="utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0-99403441-blog-128187911.235^v38^pc_relevant_anti_vip&amp;spm=1001.2101.3001.4242.1&amp;utm_relevant_index=3" href="https://blog.csdn.net/weixin_30856725/article/details/99403441"
                                                 target="_blank">
                            <div class="desc ellipsis-online ellipsis-online-1">配合使用<em>foreach</em><em>标签</em>来满足需求。 <em>foreach</em>可以对数组,map或实现了Iterable接口(如List、Set)的对象进行遍历。数组 在处理时会转换成List对象,因此<em>foreach</em>遍历的对象可以分为两大类:Iterable类型 和Map类型。--&gt;&lt;!--4.4.1 <em>foreach</em>实现i...</div>
                        </a></div>
                    </div>
                </div>
                <div class="recommend-item-box baiduSearch clearfix" data-report-view="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-130108853-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;0\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.2&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_44220970/article/details/130108853&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;1&quot;}" data-type="blog" data-url="https://blog.csdn.net/weixin_44220970/article/details/130108853">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box"><a class="tit" data-report-click="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-130108853-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;0\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.2&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_44220970/article/details/130108853&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;1&quot;}" data-report-query="utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-130108853-blog-128187911.235^v38^pc_relevant_anti_vip&amp;spm=1001.2101.3001.4242.2&amp;utm_relevant_index=4"
                                                      href="https://blog.csdn.net/weixin_44220970/article/details/130108853"
                                                      target="_blank">
                                <div class="left ellipsis-online ellipsis-online-1"><em>mybatis</em>中<em>foreach</em>的使用_<em>mybatis</em>中<em>foreach</em><em>标签</em>的<em>用法</em></div>
                            </a></div>
                            <div class="info-box display-flex">
                                <div class="info display-flex"><span class="info-block">11-16</span></div>
                            </div>
                        </div>
                        <div class="desc-box"><a data-report-click="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-130108853-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;0\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.2&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_44220970/article/details/130108853&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;1&quot;}" data-report-query="utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-130108853-blog-128187911.235^v38^pc_relevant_anti_vip&amp;spm=1001.2101.3001.4242.2&amp;utm_relevant_index=4" href="https://blog.csdn.net/weixin_44220970/article/details/130108853"
                                                 target="_blank">
                            <div class="desc ellipsis-online ellipsis-online-1"><em>MyBatis</em>中的<em>foreach</em><em>标签</em>是执行批量操作的一个非常方便的工具。通过使用<em>foreach</em><em>标签</em>,我们可以轻松地遍历集合并执行多次操作,从而实现高效的数据操作。</div>
                        </a></div>
                    </div>
                </div>
                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.2&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~YuanLiJiHua~Position-2-132354756-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;2&quot;,&quot;strategy&quot;:&quot;2~default~YuanLiJiHua~Position&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/CUITAO2305532402/article/details/132354756&quot;}" data-url="https://blog.csdn.net/CUITAO2305532402/article/details/132354756">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.2&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~YuanLiJiHua~Position-2-132354756-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;2&quot;,&quot;strategy&quot;:&quot;2~default~YuanLiJiHua~Position&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/CUITAO2305532402/article/details/132354756&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.2&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-2-132354756-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-2-132354756-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=5" href="https://blog.csdn.net/CUITAO2305532402/article/details/132354756"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1">【<em>mybatis</em>】mapper.xml中<em>foreach</em>的<em>用法</em>，含批量查询、插入、修改、删除<em>方法</em>的使用</div>
                                    <div class="tag">最新发布</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.2&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-2-132354756-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-2-132354756-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=5" href="https://blog.csdn.net/CUITAO2305532402" target="_blank"><span class="blog-title">CUITAO2305532402的博客</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">08-18</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					3182
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.2&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~YuanLiJiHua~Position-2-132354756-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;2&quot;,&quot;strategy&quot;:&quot;2~default~YuanLiJiHua~Position&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/CUITAO2305532402/article/details/132354756&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.2&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-2-132354756-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-2-132354756-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=5" href="https://blog.csdn.net/CUITAO2305532402/article/details/132354756"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">实现<em>foreach</em>批量插入数据有两种<em>方法</em>，一种是只发送一条 SQL，插入的多条数据之间通过”,” 分隔开，另一种方式是每插入一条数据就发送一条 SQL 语句，多个 SQL 语句之间用“；一条sql语句来批量更新所有数据，下面直接看一下在<em>mybatis</em>中通常是怎么写的（去掉<em>mybatis</em>语法就是原生的sql语句了，所有就没单独说sql是怎么写的）&lt;------------------------------------分隔符--------------------------------&gt;</div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_download clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.3&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~CTRLIST~AntiPaid-3-12789040-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;3&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38577200/12789040&quot;}" data-url="https://download.csdn.net/download/weixin_38577200/12789040">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.3&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~CTRLIST~AntiPaid-3-12789040-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;3&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38577200/12789040&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.3&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EAntiPaid-3-12789040-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EAntiPaid-3-12789040-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=6" href="https://download.csdn.net/download/weixin_38577200/12789040"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>Mybatis</em> <em>foreach</em><em>标签</em>使用不当导致异常的原因浅析</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info display-flex">
                                    <span class="info-block">08-31</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.3&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~CTRLIST~AntiPaid-3-12789040-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;3&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38577200/12789040&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.3&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EAntiPaid-3-12789040-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EAntiPaid-3-12789040-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=6" href="https://download.csdn.net/download/weixin_38577200/12789040"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">主要介绍了<em>Mybatis</em> <em>foreach</em><em>标签</em>使用不当导致异常的原因探究,非常不错，具有参考借鉴价值，需要的朋友可以参考下</div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box baiduSearch clearfix" data-report-view="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-4-128395222-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;3\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.3&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/m0_72167535/article/details/128395222&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;4&quot;}" data-type="blog" data-url="https://blog.csdn.net/m0_72167535/article/details/128395222">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box"><a class="tit" data-report-click="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-4-128395222-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;3\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.3&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/m0_72167535/article/details/128395222&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;4&quot;}" data-report-query="utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-4-128395222-blog-128187911.235^v38^pc_relevant_anti_vip&amp;spm=1001.2101.3001.4242.3&amp;utm_relevant_index=7"
                                                      href="https://blog.csdn.net/m0_72167535/article/details/128395222"
                                                      target="_blank">
                                <div class="left ellipsis-online ellipsis-online-1"><em>MyBatis</em>中<em>foreach</em>使用</div>
                            </a></div>
                            <div class="info-box display-flex">
                                <div class="info display-flex"><span class="info-block">11-18</span></div>
                            </div>
                        </div>
                        <div class="desc-box"><a data-report-click="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-4-128395222-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;3\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.3&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/m0_72167535/article/details/128395222&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;4&quot;}" data-report-query="utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-4-128395222-blog-128187911.235^v38^pc_relevant_anti_vip&amp;spm=1001.2101.3001.4242.3&amp;utm_relevant_index=7" href="https://blog.csdn.net/m0_72167535/article/details/128395222"
                                                 target="_blank">
                            <div class="desc ellipsis-online ellipsis-online-1"><em>MyBatis</em>中<em>foreach</em>使用 目录 1.<em>foreach</em>中的属性说明 2.collection属性的详细说明 3.示例 (1).传入的是单参数且参数类型是一个List (2).传入的是单参数且参数类型是一个array数组 (3).传入的参数是实体类,并且实体中包含数组和集合...</div>
                        </a></div>
                    </div>
                </div>
                <div class="recommend-item-box baiduSearch clearfix" data-report-view="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-5-100012927-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;3\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.4&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/boy_chen93/article/details/100012927&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;5&quot;}" data-type="blog" data-url="https://blog.csdn.net/boy_chen93/article/details/100012927">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box"><a class="tit" data-report-click="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-5-100012927-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;3\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.4&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/boy_chen93/article/details/100012927&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;5&quot;}" data-report-query="utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-5-100012927-blog-128187911.235^v38^pc_relevant_anti_vip&amp;spm=1001.2101.3001.4242.4&amp;utm_relevant_index=8"
                                                      href="https://blog.csdn.net/boy_chen93/article/details/100012927"
                                                      target="_blank">
                                <div class="left ellipsis-online ellipsis-online-1">关于<em>mybatis</em><em>标签</em>&lt;<em>foreach</em>&gt;的使用<em>总结</em></div>
                            </a></div>
                            <div class="info-box display-flex">
                                <div class="info display-flex"><span class="info-block">11-17</span></div>
                            </div>
                        </div>
                        <div class="desc-box"><a data-report-click="{&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-5-100012927-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;,\&quot;parent_index\&quot;:\&quot;3\&quot;}&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4242.4&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/boy_chen93/article/details/100012927&quot;,&quot;strategy&quot;:&quot;2~default~baidujs_baidulandingword~default&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;index&quot;:&quot;5&quot;}" data-report-query="utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-5-100012927-blog-128187911.235^v38^pc_relevant_anti_vip&amp;spm=1001.2101.3001.4242.4&amp;utm_relevant_index=8" href="https://blog.csdn.net/boy_chen93/article/details/100012927"
                                                 target="_blank">
                            <div class="desc ellipsis-online ellipsis-online-1">我们在使用<em>mybatis</em>循环遍历的时候,经常会用到&lt;<em>foreach</em>&gt;<em>标签</em>,如下: &lt;<em>foreach</em> collection="array"item="item"index="index"open="("separator=","close=")"&gt; #{item} &lt;/<em>foreach</em>&gt; 这里面有6个元素,需要注意,分别是: ...</div>
                        </a></div>
                    </div>
                </div>

                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.4&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-4-79058365-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;4&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/PostersXu/article/details/79058365&quot;}" data-url="https://blog.csdn.net/PostersXu/article/details/79058365">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.4&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-4-79058365-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;4&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/PostersXu/article/details/79058365&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.4&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4-79058365-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4-79058365-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=9" href="https://blog.csdn.net/PostersXu/article/details/79058365"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>MyBatis</em>学习——<em>foreach</em><em>标签</em>的使用</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.4&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4-79058365-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4-79058365-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=9" href="https://blog.csdn.net/PostersXu" target="_blank"><span class="blog-title">t1heluosh1的博客</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">01-14</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					2万+
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.4&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-4-79058365-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;4&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/PostersXu/article/details/79058365&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.4&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4-79058365-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4-79058365-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=9" href="https://blog.csdn.net/PostersXu/article/details/79058365"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">一、<em>foreach</em><em>标签</em>属性解读
                                    <em>MyBatis</em>的<em>foreach</em><em>标签</em>应用于多参数的交互如：多参数（相同参数）查询、循环插入数据等，<em>foreach</em><em>标签</em>包含collection、item、open、close、index、separator，<em>MyBatis</em>的<em>foreach</em><em>标签</em>与jstl<em>标签</em>的使用非常相似，以下为几个属性的意思解释：
                                    collection：参数名称，根据Mapper接口的参数名确定，也
                                </div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_download clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.5&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~CTRLIST~AntiPaid-5-12724464-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;5&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38634037/12724464&quot;}" data-url="https://download.csdn.net/download/weixin_38634037/12724464">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.5&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~CTRLIST~AntiPaid-5-12724464-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;5&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38634037/12724464&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.5&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EAntiPaid-5-12724464-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EAntiPaid-5-12724464-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=10" href="https://download.csdn.net/download/weixin_38634037/12724464"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>mybatis</em> <em>foreach</em><em>标签</em>的使用详解</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info display-flex">
                                    <span class="info-block">08-19</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.5&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~CTRLIST~AntiPaid-5-12724464-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;5&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38634037/12724464&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.5&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EAntiPaid-5-12724464-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7EAntiPaid-5-12724464-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=10" href="https://download.csdn.net/download/weixin_38634037/12724464"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">主要介绍了<em>mybatis</em> <em>foreach</em><em>标签</em>的使用详解，文中通过示例代码介绍的非常详细，对大家的学习或者工作具有一定的参考学习价值，需要的朋友们下面随着小编来一起学习学习吧</div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.6&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-6-105680200-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;6&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/qq_36631553/article/details/105680200&quot;}" data-url="https://blog.csdn.net/qq_36631553/article/details/105680200">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.6&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-6-105680200-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;6&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/qq_36631553/article/details/105680200&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.6&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-6-105680200-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-6-105680200-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=11" href="https://blog.csdn.net/qq_36631553/article/details/105680200"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>Mybatis</em><em>标签</em>&lt;<em>foreach</em>&gt;详解</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.6&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-6-105680200-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-6-105680200-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=11" href="https://blog.csdn.net/qq_36631553" target="_blank"><span class="blog-title">qq_36631553的博客</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">04-22</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					1万+
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.6&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-6-105680200-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;6&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/qq_36631553/article/details/105680200&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.6&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-6-105680200-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-6-105680200-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=11" href="https://blog.csdn.net/qq_36631553/article/details/105680200"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">接到一个批量更新表数据的需求，深入学习了&lt;<em>foreach</em>&gt;<em>标签</em>，下面做一个<em>总结</em>。

                                    一、&lt;<em>foreach</em>&gt;的六个属性

                                    &lt;<em>foreach</em>&gt;属性介绍
                                    属性
                                    介绍
                                    collection
                                    有三种格式：list，array，map。按照传递参数的类型填写对应格式。
                                    item
                                    <em>标签</em>内对象集的参数名
                                    separator
                                    每个子循环结束后...
                                </div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.7&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-7-116267602-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;7&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/s_156/article/details/116267602&quot;}" data-url="https://blog.csdn.net/s_156/article/details/116267602">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.7&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-7-116267602-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;7&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/s_156/article/details/116267602&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.7&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-7-116267602-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-7-116267602-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=12" href="https://blog.csdn.net/s_156/article/details/116267602"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>mybatis</em>之<em>foreach</em><em>用法</em></div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.7&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-7-116267602-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-7-116267602-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=12" href="https://blog.csdn.net/s_156" target="_blank"><span class="blog-title">s_156的博客</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">04-29</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					2万+
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.7&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-7-116267602-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;7&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/s_156/article/details/116267602&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.7&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-7-116267602-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-7-116267602-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=12" href="https://blog.csdn.net/s_156/article/details/116267602"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">在做<em>mybatis</em>的mapper.xml文件的时候，我们时<em>常用</em>到这样的情况：动态生成sql语句的查询条件，这个时候我们就可以用<em>mybatis</em>的<em>foreach</em>了
                                    <em>foreach</em>元素的属性主要有item，index，collection，open，separator，close。

                                    item：集合中元素迭代时的别名，该参数为必选。
                                    index：在list和数组中,index是元素的序号，在map中，index是元素的key，该参数可选
                                    open：<em>foreach</em>代码的开始符号，一般是(和close=")"合用。.
                                </div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.8&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-8-121443045-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;8&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_38192427/article/details/121443045&quot;}" data-url="https://blog.csdn.net/weixin_38192427/article/details/121443045">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.8&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-8-121443045-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;8&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_38192427/article/details/121443045&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.8&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-8-121443045-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-8-121443045-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=13" href="https://blog.csdn.net/weixin_38192427/article/details/121443045"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>MyBatis</em>中<em>foreach</em>的<em>用法</em></div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.8&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-8-121443045-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-8-121443045-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=13" href="https://blog.csdn.net/weixin_38192427" target="_blank"><span class="blog-title">桐花思雨</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">11-20</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					2万+
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.8&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-8-121443045-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;8&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_38192427/article/details/121443045&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.8&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-8-121443045-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-8-121443045-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=13" href="https://blog.csdn.net/weixin_38192427/article/details/121443045"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">目录`<em>foreach</em>` 说明
                                    <em>foreach</em> 说明
                                    你可以传递一个 list 实例或者 array 数组作为参数对象传给 <em>mybatis</em>。当你这么做的时候，<em>mybatis</em> 会自动将它包装在一个 Map 中，用名称作为键。list 实例将会以 list 作为键，而 array 数组实例将会以 array 作为键
                                    <em>foreach</em> 元素的属性主要有 item，index，collection，open，separator，close

                                    item：表示集合中每一个元素进行迭代时的别名
                                    index：指定一个名字，用于
                                </div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.9&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-9-126126086-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;9&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_61863480/article/details/126126086&quot;}" data-url="https://blog.csdn.net/weixin_61863480/article/details/126126086">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.9&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-9-126126086-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;9&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_61863480/article/details/126126086&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.9&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-9-126126086-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-9-126126086-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=14" href="https://blog.csdn.net/weixin_61863480/article/details/126126086"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>Mybatis</em>之<em>foreach</em><em>标签</em>的使用</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.9&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-9-126126086-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-9-126126086-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=14" href="https://blog.csdn.net/weixin_61863480" target="_blank"><span class="blog-title">weixin_61863480的博客</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">08-02</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					3877
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.9&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-9-126126086-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;9&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/weixin_61863480/article/details/126126086&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.9&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-9-126126086-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-9-126126086-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=14" href="https://blog.csdn.net/weixin_61863480/article/details/126126086"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1"><em>Mybatis</em>之<em>foreach</em><em>标签</em>的使用,批量查询.插入.修改</div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.10&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-10-9260183-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;10&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/cherish0125/article/details/9260183&quot;}" data-url="https://blog.csdn.net/cherish0125/article/details/9260183">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.10&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-10-9260183-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;10&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/cherish0125/article/details/9260183&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.10&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-10-9260183-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-10-9260183-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=15" href="https://blog.csdn.net/cherish0125/article/details/9260183"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1">Myibatis <em>foreach</em></div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.10&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-10-9260183-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-10-9260183-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=15" href="https://blog.csdn.net/cherish0125" target="_blank"><span class="blog-title"> 一生有你(Java)</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">07-06</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					1670
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.10&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-10-9260183-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;10&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/cherish0125/article/details/9260183&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.10&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-10-9260183-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-10-9260183-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=15" href="https://blog.csdn.net/cherish0125/article/details/9260183"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1"><em>foreach</em>的主要用在构建in条件中，它可以在SQL语句中进行迭代一个集合。<em>foreach</em>元素的属性主要有item，index，collection，open，separator，close。item表示集合中每一个元素进行迭代时的别名，index指定一个名字，用于表示在迭代过程中，每次迭代到的位置，open表示该语句以什么开始，separator表示在每次进行迭代之间以什么符号作为分隔符，cl</div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_download clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.11&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~OPENSEARCH~AntiPaid-11-12725727-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;11&quot;,&quot;strategy&quot;:&quot;2~default~OPENSEARCH~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38609401/12725727&quot;}" data-url="https://download.csdn.net/download/weixin_38609401/12725727">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.11&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~OPENSEARCH~AntiPaid-11-12725727-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;11&quot;,&quot;strategy&quot;:&quot;2~default~OPENSEARCH~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38609401/12725727&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.11&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-11-12725727-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-11-12725727-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=16" href="https://download.csdn.net/download/weixin_38609401/12725727"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>Mybatis</em>中<em>foreach</em><em>标签</em>带来的空格\换行\回车问题及解决方案</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info display-flex">
                                    <span class="info-block">08-19</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.11&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~OPENSEARCH~AntiPaid-11-12725727-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;11&quot;,&quot;strategy&quot;:&quot;2~default~OPENSEARCH~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38609401/12725727&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.11&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-11-12725727-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-11-12725727-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=16" href="https://download.csdn.net/download/weixin_38609401/12725727"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">主要介绍了解决<em>Mybatis</em>中<em>foreach</em><em>标签</em>带来的空格,换行,回车问题,本文给大家介绍的非常详细，对大家的学习或工作具有一定的参考借鉴价值，需要的朋友可以参考下</div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_download clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.12&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~OPENSEARCH~AntiPaid-12-12789982-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;12&quot;,&quot;strategy&quot;:&quot;2~default~OPENSEARCH~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38696582/12789982&quot;}" data-url="https://download.csdn.net/download/weixin_38696582/12789982">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.12&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~OPENSEARCH~AntiPaid-12-12789982-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;12&quot;,&quot;strategy&quot;:&quot;2~default~OPENSEARCH~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38696582/12789982&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.12&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-12-12789982-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-12-12789982-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=17" href="https://download.csdn.net/download/weixin_38696582/12789982"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>MyBatis</em><em>常用</em><em>标签</em>大全</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info display-flex">
                                    <span class="info-block">08-31</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.12&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~OPENSEARCH~AntiPaid-12-12789982-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;12&quot;,&quot;strategy&quot;:&quot;2~default~OPENSEARCH~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38696582/12789982&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.12&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-12-12789982-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-12-12789982-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=17" href="https://download.csdn.net/download/weixin_38696582/12789982"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">主要介绍了<em>MyBatis</em><em>常用</em><em>标签</em>大全的相关资料,非常不错，具有参考借鉴价值，需要的朋友可以参考下</div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_download clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.13&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~OPENSEARCH~AntiPaid-13-12771191-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;13&quot;,&quot;strategy&quot;:&quot;2~default~OPENSEARCH~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38610682/12771191&quot;}" data-url="https://download.csdn.net/download/weixin_38610682/12771191">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.13&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~OPENSEARCH~AntiPaid-13-12771191-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;13&quot;,&quot;strategy&quot;:&quot;2~default~OPENSEARCH~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38610682/12771191&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.13&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-13-12771191-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-13-12771191-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=18" href="https://download.csdn.net/download/weixin_38610682/12771191"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1">详解<em>mybatis</em> <em>foreach</em> collection示例</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info display-flex">
                                    <span class="info-block">08-29</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.13&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-download-2~default~OPENSEARCH~AntiPaid-13-12771191-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;13&quot;,&quot;strategy&quot;:&quot;2~default~OPENSEARCH~AntiPaid&quot;,&quot;dest&quot;:&quot;https://download.csdn.net/download/weixin_38610682/12771191&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.13&amp;utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-13-12771191-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7EOPENSEARCH%7EAntiPaid-13-12771191-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=18" href="https://download.csdn.net/download/weixin_38610682/12771191"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">主要介绍了详解<em>mybatis</em> <em>foreach</em> collection的相关资料,需要的朋友可以参考下</div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.14&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-14-129985425-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;14&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/yandao/article/details/129985425&quot;}" data-url="https://blog.csdn.net/yandao/article/details/129985425">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.14&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-14-129985425-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;14&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/yandao/article/details/129985425&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.14&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-14-129985425-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-14-129985425-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=19" href="https://blog.csdn.net/yandao/article/details/129985425"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>MyBatis</em> 动态SQL之＜<em>foreach</em>＞<em>标签</em></div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.14&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-14-129985425-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-14-129985425-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=19" href="https://blog.csdn.net/yandao" target="_blank"><span class="blog-title">yandao的博客</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">04-06</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					2549
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.14&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-14-129985425-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;14&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/yandao/article/details/129985425&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.14&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-14-129985425-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-14-129985425-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=19" href="https://blog.csdn.net/yandao/article/details/129985425"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1"><em>foreach</em> <em>标签</em>用于循环语句，它很好的支持了数据和 List、set 接口的集合，并对此提供遍历的功能。对于一些 SQL 语句中含有 in 条件，需要迭代条件集合来生成的情况，可以使用 <em>foreach</em> 来实现 SQL 条件的迭代。要查询一个表中id为1，3，4的数据，可以把需要查的这些id的数据存放到一个集合中，通过遍历这个集合来查询到这些数据，这种时候我们就用到<em>foreach</em>了。</div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.15&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-15-116024584-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;15&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/mhfaaa/article/details/116024584&quot;}" data-url="https://blog.csdn.net/mhfaaa/article/details/116024584">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.15&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-15-116024584-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;15&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/mhfaaa/article/details/116024584&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.15&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-15-116024584-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-15-116024584-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=20" href="https://blog.csdn.net/mhfaaa/article/details/116024584"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>Mybatis</em>（<em>forEach</em>）<em>标签</em></div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.15&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-15-116024584-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-15-116024584-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=20" href="https://blog.csdn.net/mhfaaa" target="_blank"><span class="blog-title">mhfaaa的博客</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">04-22</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					260
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.15&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-15-116024584-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;15&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/mhfaaa/article/details/116024584&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.15&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-15-116024584-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-15-116024584-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=20" href="https://blog.csdn.net/mhfaaa/article/details/116024584"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1"><em>mybatis</em>动态sql中<em>foreach</em><em>标签</em>的使用
                                    我们通常可以将之用到批量删除、添加等操作中。
                                    <em>foreach</em><em>标签</em>主要用于构建in条件，他可以在sql中对集合进行迭代。如下：

                                    &lt;delete id="deleteBatch"&gt;

                                    　　　　delete from user where id in

                                    　　　　&lt;<em>foreach</em> collection="array" item="id" index="index" open="(" close=")" separator=","&gt;

                                    　
                                </div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.16&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-16-107996967-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;16&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/jiaomubai/article/details/107996967&quot;}" data-url="https://blog.csdn.net/jiaomubai/article/details/107996967">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.16&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-16-107996967-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;16&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/jiaomubai/article/details/107996967&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.16&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-16-107996967-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-16-107996967-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=21" href="https://blog.csdn.net/jiaomubai/article/details/107996967"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>MyBatis</em>中<em>foreach</em><em>用法</em></div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.16&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-16-107996967-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-16-107996967-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=21" href="https://blog.csdn.net/jiaomubai" target="_blank"><span class="blog-title">jiaomubai的博客</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">08-14</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					7419
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.16&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-16-107996967-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;16&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/jiaomubai/article/details/107996967&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.16&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-16-107996967-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-16-107996967-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=21" href="https://blog.csdn.net/jiaomubai/article/details/107996967"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1"><em>foreach</em><em>用法</em>

                                    SQL语句中有时会使用in关键字，如id in {1，2，3}，我们可以使用${ids}方式直接获取值，但是这种<em>方法</em>不能防止SQL注入，想避免SQL注入的话就需要使用#{id}的方式，这时我们就可以配合使用<em>foreach</em><em>标签</em>了。<em>foreach</em>可以对数组、Map或实现了Iterable接口（List、Set）的对象进行遍历。数组在处理时会转换为List对象，因此<em>foreach</em>遍历的对象可以分为两大类：Iterable类型和Map类型。

                                    <em>foreach</em>实现in集合

                                    <em>foreach</em>实现i
                                </div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.17&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-17-130331000-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;17&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/zhangbeizhen18/article/details/130331000&quot;}" data-url="https://blog.csdn.net/zhangbeizhen18/article/details/130331000">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.17&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-17-130331000-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;17&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/zhangbeizhen18/article/details/130331000&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.17&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-17-130331000-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-17-130331000-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=22" href="https://blog.csdn.net/zhangbeizhen18/article/details/130331000"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>mybatis</em>的＜<em>foreach</em>＞<em>标签</em>使用</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.17&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-17-130331000-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-17-130331000-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=22" href="https://blog.csdn.net/zhangbeizhen18" target="_blank"><span class="blog-title">zhangbeizhen18的博客</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">04-23</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					2748
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.17&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-17-130331000-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;17&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Rate&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/zhangbeizhen18/article/details/130331000&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.17&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-17-130331000-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-17-130331000-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=22" href="https://blog.csdn.net/zhangbeizhen18/article/details/130331000"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">记录：419
                                    场景：使用<em>MyBatis</em>的<em>标签</em>的循环遍历List类型的入参。使用collection属性指定List，item指定List中存放的对象，separator指定分割符号，open指定开始字符，close指定结束字符。
                                </div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_blog clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.18&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~activity-18-117635299-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;18&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~activity&quot;,&quot;dest&quot;:&quot;https://huaweicloud.csdn.net/63a56fb5b878a54545947157.html&quot;}" data-url="https://huaweicloud.csdn.net/63a56fb5b878a54545947157.html">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.18&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~activity-18-117635299-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;18&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~activity&quot;,&quot;dest&quot;:&quot;https://huaweicloud.csdn.net/63a56fb5b878a54545947157.html&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.18&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Eactivity-18-117635299-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Eactivity-18-117635299-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=23" href="https://huaweicloud.csdn.net/63a56fb5b878a54545947157.html"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>Mybatis</em>——<em>foreach</em><em>用法</em></div>
                                    <div class="tag">热门推荐</div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info">
                                    <a data-report-query="spm=1001.2101.3001.6650.18&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Eactivity-18-117635299-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Eactivity-18-117635299-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=23" href="https://blog.csdn.net/m0_37965811" target="_blank"><span class="blog-title">m0_37965811的博客</span></a>
                                </div>
                                <div class="info display-flex">
                                    <span class="info-block time">07-06</span>
                                    <span class="info-block read"><img alt="" class="read-img" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
					4万+
					</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.18&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~activity-18-117635299-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;18&quot;,&quot;strategy&quot;:&quot;2~default~BlogCommendFromBaidu~activity&quot;,&quot;dest&quot;:&quot;https://huaweicloud.csdn.net/63a56fb5b878a54545947157.html&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.18&amp;utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Eactivity-18-117635299-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Eactivity-18-117635299-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=23" href="https://huaweicloud.csdn.net/63a56fb5b878a54545947157.html"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1">在做<em>mybatis</em>的mapper.xml文件的时候，时常遇到一些需要批量操作的情况，这个时候<em>mybatis</em>的<em>foreach</em><em>标签</em>就派上用场了。

                                    <em>foreach</em>元素的属性主要有item，index，collection，open，separator，close。


                                    item：集合中元素迭代时的别名，该参数为必选。


                                    index：在list和数组中,index是元素的序号，在map中，index是元素的key，该参数可选


                                    open：<em>foreach</em>代码的开始符号，一般是(和clos...
                                </div>
                            </a>
                        </div>
                    </div>
                </div>
                <div class="recommend-item-box type_chatgpt clearfix" data-report-view="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.19&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-chatgpt-2~default~CTRLIST~Position-19-82gigtxkfz-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;19&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Position&quot;,&quot;dest&quot;:&quot;https://wenku.csdn.net/answer/82gigtxkfz&quot;}" data-url="https://wenku.csdn.net/answer/82gigtxkfz">
                    <div class="content-box">
                        <div class="content-blog display-flex">
                            <div class="title-box">
                                <a class="tit" data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.19&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-chatgpt-2~default~CTRLIST~Position-19-82gigtxkfz-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;19&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Position&quot;,&quot;dest&quot;:&quot;https://wenku.csdn.net/answer/82gigtxkfz&quot;}"
                                   data-report-query="spm=1001.2101.3001.6650.19&amp;utm_medium=distribute.pc_relevant.none-task-chatgpt-2%7Edefault%7ECTRLIST%7EPosition-19-82gigtxkfz-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-chatgpt-2%7Edefault%7ECTRLIST%7EPosition-19-82gigtxkfz-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=24" href="https://wenku.csdn.net/answer/82gigtxkfz"
                                   target="_blank">
                                    <div class="left ellipsis-online ellipsis-online-1"><em>mybatis</em>的<em>foreach</em><em>标签</em></div>
                                </a>
                            </div>
                            <div class="info-box display-flex">
                                <div class="info display-flex">
                                    <span class="info-block">08-15</span>
                                </div>
                            </div>
                        </div>
                        <div class="desc-box">
                            <a data-report-click="{&quot;ab&quot;:&quot;new&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6650.19&quot;,&quot;mod&quot;:&quot;popu_387&quot;,&quot;extra&quot;:&quot;{\&quot;highlightScore\&quot;:0.0,\&quot;utm_medium\&quot;:\&quot;distribute.pc_relevant.none-task-chatgpt-2~default~CTRLIST~Position-19-82gigtxkfz-blog-128187911.235^v38^pc_relevant_anti_vip\&quot;,\&quot;dist_request_id\&quot;:\&quot;1700390200471_02617\&quot;}&quot;,&quot;dist_request_id&quot;:&quot;1700390200471_02617&quot;,&quot;ab_strategy&quot;:&quot;increase_t0_anti_vip&quot;,&quot;index&quot;:&quot;19&quot;,&quot;strategy&quot;:&quot;2~default~CTRLIST~Position&quot;,&quot;dest&quot;:&quot;https://wenku.csdn.net/answer/82gigtxkfz&quot;}"
                               data-report-query="spm=1001.2101.3001.6650.19&amp;utm_medium=distribute.pc_relevant.none-task-chatgpt-2%7Edefault%7ECTRLIST%7EPosition-19-82gigtxkfz-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;depth_1-utm_source=distribute.pc_relevant.none-task-chatgpt-2%7Edefault%7ECTRLIST%7EPosition-19-82gigtxkfz-blog-128187911.235%5Ev38%5Epc_relevant_anti_vip&amp;utm_relevant_index=24" href="https://wenku.csdn.net/answer/82gigtxkfz"
                               target="_blank">
                                <div class="desc ellipsis-online ellipsis-online-1"><em>MyBatis</em>的`&lt;<em>foreach</em>&gt;`<em>标签</em>是用于在SQL语句中动态生成循环部分的<em>标签</em>。它允许你迭代一个集合或数组，并将每个元素应用到SQL语句中的特定位置。

                                    以下是`&lt;<em>foreach</em>&gt;`<em>标签</em>的基本语法：

                                    ```xml
                                    &lt;<em>foreach</em> collection="collection" item="item" index="index" open="open" close="close" separator="separator"&gt;
                                    &lt;!-- 需要迭代的SQL语句或其他操作 --&gt;
                                    &lt;/<em>foreach</em>&gt;
                                    ```

                                    其中，<em>常用</em>的属性包括：

                                    - `collection`：指定要迭代的集合或数组。
                                    - `item`：指定迭代时的当前元素变量名。
                                    - `index`（可选）：指定迭代时的当前索引变量名。
                                    - `open`（可选）：指定循环开始时的字符串。
                                    - `close`（可选）：指定循环结束时的字符串。
                                    - `separator`（可选）：指定每次迭代之间的分隔符。

                                    以下是一个示例，展示如何在<em>MyBatis</em>中使用`&lt;<em>foreach</em>&gt;`<em>标签</em>：

                                    ```xml
                                    &lt;select id="getUsersByIds" resultType="User"&gt;
                                    SELECT * FROM users
                                    WHERE id IN
                                    &lt;<em>foreach</em> collection="userIds" item="userId" open="(" close=")" separator=","&gt;
                                    #{userId}
                                    &lt;/<em>foreach</em>&gt;
                                    &lt;/select&gt;
                                    ```

                                    在上述示例中，`getUsersByIds`是SQL语句的唯一标识符，`User`是结果类型。`userIds`是一个集合，通过`&lt;<em>foreach</em>&gt;`<em>标签</em>将其元素迭代为SQL语句中的参数，最终生成的SQL语句类似于`SELECT * FROM users WHERE id IN (1, 2, 3)`。

                                    通过使用`&lt;<em>foreach</em>&gt;`<em>标签</em>，你可以方便地在<em>MyBatis</em>中处理动态生成的循环部分。
                                </div>
                            </a>
                        </div>
                    </div>
                </div>
            </div>
            <div class="recommend-nps-box common-nps-box" id="recommendNps" style="display: block;">
                <h3 class="aside-title">“相关推荐”对你有帮助么？</h3>
                <div class="aside-content">
                    <ul class="newnps-list">
                        <li class="newnps-item" data-type="非常没帮助">
                            <div class="newnps-img-box">
                                <img alt="" class="newnps-img active" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeel1.png">
                                <img alt="" class="newnps-img default" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeelGrey1.png">
                            </div>
                            <div class="newnps-text">非常没帮助</div>
                        </li>
                        <li class="newnps-item" data-type="没帮助">
                            <div class="newnps-img-box">
                                <img alt="" class="newnps-img active" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeel2.png">
                                <img alt="" class="newnps-img default" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeelGrey2.png">
                            </div>
                            <div class="newnps-text">没帮助</div>
                        </li>
                        <li class="newnps-item" data-type="一般">
                            <div class="newnps-img-box">
                                <img alt="" class="newnps-img active" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeel3.png">
                                <img alt="" class="newnps-img default" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeelGrey3.png">
                            </div>
                            <div class="newnps-text">一般</div>
                        </li>
                        <li class="newnps-item" data-type="有帮助">
                            <div class="newnps-img-box">
                                <img alt="" class="newnps-img active" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeel4.png">
                                <img alt="" class="newnps-img default" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeelGrey4.png">
                            </div>
                            <div class="newnps-text">有帮助</div>
                        </li>
                        <li class="newnps-item" data-type="非常有帮助">
                            <div class="newnps-img-box">
                                <img alt="" class="newnps-img active" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeel5.png">
                                <img alt="" class="newnps-img default" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeelGrey5.png">
                            </div>
                            <div class="newnps-text">非常有帮助</div>
                        </li>
                    </ul>
                    <div class="newnps-form-box">
                        <div class="newnps-form">
                            <input class="newnps-input" placeholder="请输入建议或反馈后点击提交" type="text">
                            <span class="newnps-btn">提交</span>
                        </div>
                    </div>
                </div>
            </div>
            <div class="blog-footer-bottom" style="margin-top:10px;">
                <div class="" id="copyright-box">
                    <div class="column small" id="csdn-copyright-footer">
                        <ul class="footer-column-t">
                            <li>
                                <a href="https://www.csdn.net/company/index.html#about" rel="nofollow" target="_blank">关于我们</a>
                            </li>
                            <li>
                                <a href="https://www.csdn.net/company/index.html#recruit" rel="nofollow" target="_blank">招贤纳士</a>
                            </li>
                            <li><a href="https://marketing.csdn.net/questions/Q2202181741262323995" rel="nofollow" target="_blank">商务合作</a></li>
                            <li><a href="https://marketing.csdn.net/questions/Q2202181748074189855" rel="nofollow" target="_blank">寻求报道</a></li>
                            <li>
                                <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/tel.png">
                                <span>400-660-0108</span>
                            </li>
                            <li>
                                <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/email.png">
                                <a href="mailto:webmaster@csdn.net" rel="nofollow" target="_blank">kefu@csdn.net</a>
                            </li>
                            <li>
                                <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/cs.png">
                                <a href="https://csdn.s2.udesk.cn/im_client/?web_plugin_id=29181" rel="nofollow" target="_blank">在线客服</a>
                            </li>
                            <li>
                                工作时间&nbsp;8:30-22:00
                            </li>
                        </ul>
                        <ul class="footer-column-b">
                            <li><img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/badge.png"><a href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=11010502030143" rel="nofollow" target="_blank">公安备案号11010502030143</a></li>
                            <li><a href="http://beian.miit.gov.cn/publish/query/indexFirst.action" rel="nofollow" target="_blank">京ICP备19004658号</a></li>
                            <li><a href="https://csdnimg.cn/release/live_fe/culture_license.png" rel="nofollow" target="_blank">京网文〔2020〕1039-165号</a></li>
                            <li><a href="https://csdnimg.cn/cdn/content-toolbar/csdn-ICP.png" rel="nofollow" target="_blank">经营性网站备案信息</a></li>
                            <li><a href="http://www.bjjubao.org/" rel="nofollow" target="_blank">北京互联网违法和不良信息举报中心</a></li>
                            <li><a href="https://download.csdn.net/tutelage/home" rel="nofollow" target="_blank">家长监护</a></li>
                            <li><a href="http://www.cyberpolice.cn/" rel="nofollow" target="_blank">网络110报警服务</a></li>
                            <li><a href="http://www.12377.cn/" rel="nofollow" target="_blank">中国互联网举报中心</a></li>
                            <li><a href="https://chrome.google.com/webstore/detail/csdn%E5%BC%80%E5%8F%91%E8%80%85%E5%8A%A9%E6%89%8B/kfkdboecolemdjodhmhmcibjocfopejo?hl=zh-CN" rel="nofollow" target="_blank">Chrome商店下载</a></li>
                            <li><a href="https://blog.csdn.net/blogdevteam/article/details/126135357" rel="nofollow" target="_blank">账号管理规范</a></li>
                            <li><a href="https://www.csdn.net/company/index.html#statement" rel="nofollow" target="_blank">版权与免责声明</a></li>
                            <li><a href="https://blog.csdn.net/blogdevteam/article/details/90369522" rel="nofollow" target="_blank">版权申诉</a></li>
                            <li><a href="https://img-home.csdnimg.cn/images/20220705052819.png" rel="nofollow" target="_blank">出版物许可证</a></li>
                            <li><a href="https://img-home.csdnimg.cn/images/20210414021142.jpg" rel="nofollow" target="_blank">营业执照</a></li>
                            <li>©1999-2023北京创新乐知网络技术有限公司</li>
                        </ul>
                    </div>
                </div>
            </div>
            <script data-isfootertrack="false" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/csdn-footer.js.下载" type="text/javascript"></script>
            <script type="text/javascript">
    window.csdn.csdnFooter.options = {
        el: '.blog-footer-bottom',
        type: 2
    }


            </script>
        </main>
        <aside class="blog_container_aside" style="position: fixed; bottom: 0px; z-index: 99; left: 100.6px; width: 300px; top: auto;">
            <div class="aside-box" id="asideProfile">
                <div class="profile-intro d-flex">
                    <div class="avatar-box d-flex justify-content-center flex-column">
                        <a data-report-click="{&quot;mod&quot;:&quot;popu_379&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4121&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji" target="_blank">
                            <img class="avatar_pic" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/default.jpg!1">
                        </a>
                    </div>
                    <div class="user-info d-flex flex-column profile-intro-name-box">
                        <div class="profile-intro-name-boxTop">
                            <a class="" data-report-click="{&quot;mod&quot;:&quot;popu_379&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4122&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji" id="uid" target="_blank" title="长安明月">
                                <span class="name " username="piaoranyuji">长安明月</span>
                            </a>
                            <span>
                </span>
                            <span class="flag expert-blog">
                <span class="bubble">CSDN认证博客专家</span>
                </span>
                            <span class="flag company-blog">
                <span class="bubble">CSDN认证企业博客</span>
                </span>
                        </div>
                        <div class="profile-intro-name-boxFooter">
                            <span class="personal-home-page personal-home-years" title="已加入 CSDN 12年">码龄12年</span>
                            <span class="personal-home-page">
                    <a class="personal-home-certification" href="https://i.csdn.net/#/uc/profile?utm_source=14998968" target="_blank" title="暂无认证">
                    <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/nocErtification.png">
                    暂无认证
                    </a>
                    </span>
                        </div>
                    </div>
                </div>
                <div class="data-info d-flex item-tiling">
                    <dl class="text-center" title="149">
                        <a data-report-click="{&quot;mod&quot;:&quot;1598321000_001&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4310&quot;}" data-report-query="t=1" href="https://blog.csdn.net/piaoranyuji">
                            <dt><span class="count">149</span></dt>
                            <dd class="font">原创</dd>
                        </a>
                    </dl>
                    <dl class="text-center" data-report-click="{&quot;mod&quot;:&quot;1598321000_002&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4311&quot;}" title="30489">
                        <a href="https://blog.csdn.net/rank/list/weekly" target="_blank">
                            <dt><span class="count">3万+</span></dt>
                            <dd class="font">周排名</dd>
                        </a>
                    </dl>
                    <dl class="text-center" title="6941">
                        <a data-report-click="{&quot;mod&quot;:&quot;1598321000_003&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4312&quot;}" href="https://blog.csdn.net/rank/list/total" target="_blank">
                            <dt><span class="count">6941</span></dt>
                            <dd class="font">总排名</dd>
                        </a>
                    </dl>
                    <dl class="text-center" style="min-width:58px" title="647845">
                        <dt><span class="count">64万+</span></dt>
                        <dd>访问</dd>
                    </dl>
                    <dl class="text-center" title="5级,点击查看等级说明">
                        <dt><a href="https://blog.csdn.net/blogdevteam/article/details/103478461" target="_blank">
                            <img class="level" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/blog5.png">
                        </a>
                        </dt>
                        <dd>等级</dd>
                    </dl>
                </div>
                <div class="item-rank"></div>
                <div class="data-info d-flex item-tiling">
                    <dl class="text-center" title="3442">
                        <dt><span class="count">3442</span></dt>
                        <dd>积分</dd>
                    </dl>
                    <dl class="text-center" id="fanBox" title="109">
                        <dt><span class="count" id="fan">109</span></dt>
                        <dd>粉丝</dd>
                    </dl>
                    <dl class="text-center" title="365">
                        <dt><span class="count">365</span></dt>
                        <dd>获赞</dd>
                    </dl>
                    <dl class="text-center" title="66">
                        <dt><span class="count">66</span></dt>
                        <dd>评论</dd>
                    </dl>
                    <dl class="text-center" title="1506">
                        <dt><span class="count">1506</span></dt>
                        <dd>收藏</dd>
                    </dl>
                </div>
                <div class="aside-box-footer">
                    <div class="badge-box d-flex">
                        <div class="badge d-flex">
                            <div class="icon-badge" title="习惯养成">
                                <div class="mouse-box">
                                    <img alt="习惯养成" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/xiguanyangchengLv1.png">
                                </div>
                            </div>
                            <div class="icon-badge" title="签到新秀">
                                <div class="mouse-box">
                                    <img alt="签到新秀" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/qiandao5@240.png">
                                </div>
                            </div>
                            <div class="icon-badge" title="五一创作勋章">
                                <div class="mouse-box">
                                    <img alt="五一创作勋章" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/51_create.png">
                                </div>
                            </div>
                            <div class="icon-badge" title="持续创作">
                                <div class="mouse-box">
                                    <img alt="持续创作" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/chizhiyiheng@240.png">
                                </div>
                            </div>
                            <div class="icon-badge" title="GitHub">
                                <div class="mouse-box">
                                    <img alt="GitHub" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/github@240.png">
                                </div>
                            </div>
                            <div class="icon-badge" title="1024勋章">
                                <div class="mouse-box">
                                    <img alt="1024勋章" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/up2_1024@240.png">
                                </div>
                            </div>
                            <div class="icon-badge" title="勤写标兵">
                                <div class="mouse-box">
                                    <img alt="勤写标兵" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/f10c883cfd674a3e9217683e8cd55511.png">
                                </div>
                            </div>
                            <div class="icon-badge" title="笔耕不辍">
                                <div class="mouse-box">
                                    <img alt="笔耕不辍" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/afc91fe638a54ce9a2f50c5e3e09d46b.png">
                                </div>
                            </div>
                            <div class="icon-badge" title="1024超级勋章">
                                <div class="mouse-box">
                                    <img alt="1024超级勋章" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/chaoji1024@240.png">
                                </div>
                            </div>
                            <div class="icon-badge" title="话题达人">
                                <div class="mouse-box">
                                    <img alt="话题达人" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/96ac957ca0a64be3a6393da7a9474486.png">
                                </div>
                            </div>
                            <div class="icon-badge" title="创作能手">
                                <div class="mouse-box">
                                    <img alt="创作能手" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/qixiebiaobing4@240.png">
                                </div>
                            </div>
                            <div class="icon-badge" title="阅读者勋章">
                                <div class="mouse-box">
                                    <img alt="阅读者勋章" class="medal-img" data-report-click="{&quot;spm&quot;:&quot;3001.4296&quot;}" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/yuedu7@240.png">
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="profile-intro-name-boxOpration">
                    <div class="opt-letter-watch-box">
                        <a class="bt-button personal-letter" href="https://im.csdn.net/chat/piaoranyuji" rel="nofollow" target="_blank">私信</a>
                    </div>
                    <div class="opt-letter-watch-box">
                        <a class="personal-watch bt-button" id="btnAttent">关注</a>
                    </div>
                </div>
            </div>
            <a class="remuneration-box" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.9809&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/128187911" id="remuneration" rel="nofollow">
                <img alt="" src="https://blog.csdn.net/piaoranyuji/article/details/128187911">
            </a>
            <div class="aside-box side-write-guide-box type-1" id="asideWriteGuide">
                <div class="content-box">
                    <a class="btn-go-write" data-report-click="{&quot;spm&quot;:&quot;3001.9841&quot;}" data-report-query="spm=3001.9841" href="https://mp.csdn.net/edit" rel="nofollow" target="_blank">
                        <img alt="写文章" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20231011045000.png">
                    </a>
                </div>
            </div>
            <div class="aside-box" id="asideSearchArticle">
                <div class="aside-content search-comter">
                    <div class="aside-search aside-search-blog">
                        <input autocomplete="off" class="input-serch-blog" id="search-blog-words" name="" placeholder="搜博主文章" type="text" value="">
                        <a class="btn-search-blog" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.9182&quot;}">
                            <img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/csdn-sou.png">
                        </a>
                    </div>
                </div>
            </div>


            <div class="aside-box" id="asideHotArticle">
                <h3 class="aside-title">热门文章</h3>
                <div class="aside-content">
                    <ul class="hotArticle-list">
                        <li>
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_541&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4139&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/113735345&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/113735345" target="_blank">
                                Linux 系统查看网卡配置信息
                                <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
                                <span class="read">36093</span>
                            </a>
                        </li>
                        <li>
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_541&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4139&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/116594403&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/116594403" target="_blank">
                                Java BigDecimal 的舍入模式（RoundingMode）详解
                                <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
                                <span class="read">31650</span>
                            </a>
                        </li>
                        <li>
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_541&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4139&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/125440931&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/125440931" target="_blank">
                                Java 如何复制 List ?
                                <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
                                <span class="read">30198</span>
                            </a>
                        </li>
                        <li>
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_541&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4139&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/117924664&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/117924664" target="_blank">
                                Linux netstat 命令安装
                                <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
                                <span class="read">28202</span>
                            </a>
                        </li>
                        <li>
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_541&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4139&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/126140261&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/126140261" target="_blank">
                                RSA 加解密（Java 实现）
                                <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/readCountWhite.png">
                                <span class="read">23131</span>
                            </a>
                        </li>
                    </ul>
                </div>
            </div>
            <div class="aside-box flexible-box" id="asideCategory">
                <h3 class="aside-title">分类专栏</h3>
                <div class="aside-content">
                    <ul>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10340311.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10340311.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756927.png">
                                <span class="title oneline">
                        MyBatis
                    </span>
                            </a>
                            <span class="special-column-num">4篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10595051.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10595051.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756927.png">
                                <span class="title oneline">
                        shell
                    </span>
                            </a>
                            <span class="special-column-num">6篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9623325.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9623325.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756925.png">
                                <span class="title oneline">
                        设计模式
                    </span>
                            </a>
                            <span class="special-column-num">2篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9889305.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9889305.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756925.png">
                                <span class="title oneline">
                        Kafka
                    </span>
                            </a>
                            <span class="special-column-num">3篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9638190.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9638190.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756926.png">
                                <span class="title oneline">
                        SpringCloud
                    </span>
                            </a>
                            <span class="special-column-num">5篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9622331.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9622331.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756927.png">
                                <span class="title oneline">
                        微服务
                    </span>
                            </a>
                            <span class="special-column-num">7篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10891681.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10891681.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756928.png">
                                <span class="title oneline">
                        excel
                    </span>
                            </a>
                            <span class="special-column-num">3篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10804073.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10804073.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756916.png">
                                <span class="title oneline">
                        网络协议
                    </span>
                            </a>
                            <span class="special-column-num">3篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10829900.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10829900.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756922.png">
                                <span class="title oneline">
                        elasticsearch
                    </span>
                            </a>
                            <span class="special-column-num">5篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10146144.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10146144.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756925.png">
                                <span class="title oneline">
                        Maven
                    </span>
                            </a>
                            <span class="special-column-num">3篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10751260.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10751260.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756922.png">
                                <span class="title oneline">
                        git
                    </span>
                            </a>
                            <span class="special-column-num">1篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9929539.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9929539.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756724.png">
                                <span class="title oneline">
                        kibana
                    </span>
                            </a>
                            <span class="special-column-num">1篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9646660.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9646660.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756922.png">
                                <span class="title oneline">
                        RabbitMQ
                    </span>
                            </a>
                            <span class="special-column-num">1篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759194.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759194.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756913.png">
                                <span class="title oneline">
                        MySQL
                    </span>
                            </a>
                            <span class="special-column-num">31篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759196.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759196.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756757.png">
                                <span class="title oneline">
                        Java
                    </span>
                            </a>
                            <span class="special-column-num">61篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759200.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759200.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756922.png">
                                <span class="title oneline">
                        前端
                    </span>
                            </a>
                            <span class="special-column-num">3篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759205.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759205.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756925.png">
                                <span class="title oneline">
                        测试
                    </span>
                            </a>
                            <span class="special-column-num">2篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759206.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759206.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756918.png">
                                <span class="title oneline">
                        Linux
                    </span>
                            </a>
                            <span class="special-column-num">26篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759207.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759207.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756930.png">
                                <span class="title oneline">
                        安全
                    </span>
                            </a>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759214.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759214.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756913.png">
                                <span class="title oneline">
                        NoSQL
                    </span>
                            </a>
                            <span class="special-column-num">6篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8841014.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8841014.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756913.png">
                                <span class="title oneline">
                        Java Web
                    </span>
                            </a>
                            <span class="special-column-num">8篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8846717.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8846717.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756754.png">
                                <span class="title oneline">
                        算法
                    </span>
                            </a>
                            <span class="special-column-num">9篇</span>
                        </li>
                        <li>
                            <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8873851.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8873851.html">
                                <div class="special-column-bar "></div>
                                <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756927.png">
                                <span class="title oneline">
                        SpringBoot
                    </span>
                            </a>
                            <span class="special-column-num">25篇</span>
                        </li>
                    </ul>
                </div>
                <p class="text-center">
                    <a class="flexible-btn" data-fbox="aside-archive"><img alt="" class="look-more" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/arrowDownWhite.png"></a>
                </p>
            </div>
            <div class="aside-box" id="asideNewComments">
                <h3 class="aside-title">最新评论</h3>
                <div class="aside-content">
                    <ul class="newcomment-list">
                        <li>
                            <a class="title text-truncate" data-report-click="{&quot;mod&quot;:&quot;popu_542&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4231&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/126140261#comments_29379115&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/126140261#comments_29379115" target="_blank">RSA 加解密（Java 实现）</a>
                            <p class="comment ellipsis">
                                <a class="user-name" href="https://blog.csdn.net/piaoranyuji" target="_blank">长安明月: </a>
                                <span class="code-comments">改好了，谢谢提醒。</span>
                            </p>
                        </li>
                        <li>
                            <a class="title text-truncate" data-report-click="{&quot;mod&quot;:&quot;popu_542&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4231&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/126140261#comments_29296360&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/126140261#comments_29296360" target="_blank">RSA 加解密（Java 实现）</a>
                            <p class="comment ellipsis">
                                <a class="user-name" href="https://blog.csdn.net/weixin_63549044" target="_blank">Brilliant.Louis: </a>
                                <span class="code-comments">有一个小瑕疵，就是在main函数调用encrypt1函数时，写成了encrypto了</span>
                            </p>
                        </li>
                        <li>
                            <a class="title text-truncate" data-report-click="{&quot;mod&quot;:&quot;popu_542&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4231&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/114919995#comments_29169830&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/114919995#comments_29169830" target="_blank">wget 安装：Package wget-1.14-18.el7_6.1.x86_64 already installed and latest version</a>
                            <p class="comment ellipsis">
                                <a class="user-name" href="https://blog.csdn.net/Nanami77777773" target="_blank">Nanami77777773: </a>
                                <span class="code-comments">卸载提示没有wget，安装又提示已安装，真的裂开<img alt="表情包" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/011.png"></span>
                            </p>
                        </li>
                        <li>
                            <a class="title text-truncate" data-report-click="{&quot;mod&quot;:&quot;popu_542&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4231&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/117328539#comments_29128863&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/117328539#comments_29128863" target="_blank">SpringBoot JavaMailSender 发送邮件</a>
                            <p class="comment ellipsis">
                                <a class="user-name" href="https://blog.csdn.net/piaoranyuji" target="_blank">长安明月: </a>
                                <span class="code-comments">不好意思，没用过nacos，你网上搜搜</span>
                            </p>
                        </li>
                        <li>
                            <a class="title text-truncate" data-report-click="{&quot;mod&quot;:&quot;popu_542&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4231&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/126777699#comments_29117376&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/126777699#comments_29117376" target="_blank">MyBatis 查询 MySQL 实现返回 List＜Map＞ 或 Map 类型数据操作</a>
                            <p class="comment ellipsis">
                                <a class="user-name" href="https://blog.csdn.net/Fennick_20" target="_blank">Fennick_20: </a>
                                <span class="code-comments">service中返回值是Map需要加注解@MapKey()，
HashMap不需要</span>
                            </p>
                        </li>
                    </ul>
                </div>
            </div>
            <div class="aside-box common-nps-box" id="asideNewNps" style="display: block;">
                <h3 class="aside-title">您愿意向朋友推荐“博客详情页”吗？</h3>
                <div class="aside-content">
                    <ul class="newnps-list">
                        <li class="newnps-item" data-type="强烈不推荐">
                            <div class="newnps-img-box">
                                <img alt="" class="newnps-img active" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeel1.png">
                                <img alt="" class="newnps-img default" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeelGrey1.png">
                            </div>
                            <div class="newnps-text">强烈不推荐</div>
                        </li>
                        <li class="newnps-item" data-type="不推荐">
                            <div class="newnps-img-box">
                                <img alt="" class="newnps-img active" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeel2.png">
                                <img alt="" class="newnps-img default" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeelGrey2.png">
                            </div>
                            <div class="newnps-text">不推荐</div>
                        </li>
                        <li class="newnps-item" data-type="一般般">
                            <div class="newnps-img-box">
                                <img alt="" class="newnps-img active" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeel3.png">
                                <img alt="" class="newnps-img default" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeelGrey3.png">
                            </div>
                            <div class="newnps-text">一般般</div>
                        </li>
                        <li class="newnps-item" data-type="推荐">
                            <div class="newnps-img-box">
                                <img alt="" class="newnps-img active" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeel4.png">
                                <img alt="" class="newnps-img default" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeelGrey4.png">
                            </div>
                            <div class="newnps-text">推荐</div>
                        </li>
                        <li class="newnps-item" data-type="强烈推荐">
                            <div class="newnps-img-box">
                                <img alt="" class="newnps-img active" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeel5.png">
                                <img alt="" class="newnps-img default" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/npsFeelGrey5.png">
                            </div>
                            <div class="newnps-text">强烈推荐</div>
                        </li>
                    </ul>
                    <div class="newnps-form-box">
                        <div class="newnps-form">
                            <input class="newnps-input" placeholder="请输入建议或反馈后点击提交" type="text">
                            <span class="newnps-btn">提交</span>
                        </div>
                    </div>
                </div>
            </div>
            <div class="aside-box" id="asideArchive" style="display:block!important; width:300px;">
                <h3 class="aside-title">最新文章</h3>
                <div class="aside-content">
                    <ul class="inf_list clearfix">
                        <li class="clearfix">
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_382&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4136&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/134305755&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/134305755" target="_blank">图片文件和 Base64 字符串互转（Java 实现）</a>
                        </li>
                        <li class="clearfix">
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_382&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4136&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/134006523&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/134006523" target="_blank">LeetCode 2908. 元素和最小的山形三元组 I（后缀数组）</a>
                        </li>
                        <li class="clearfix">
                            <a data-report-click="{&quot;mod&quot;:&quot;popu_382&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4136&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/article/details/133709234&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/article/details/133709234" target="_blank">MySQL 如何统计一个数据库中每个表的数据量</a>
                        </li>
                    </ul>
                    <div class="archive-bar"></div>
                    <div class="archive-box">
                        <div class="archive-list-item"><a data-report-click="{&quot;mod&quot;:&quot;popu_538&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4138&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji?type=blog&amp;year=2023&amp;month=11&quot;}" href="https://blog.csdn.net/piaoranyuji?type=blog&amp;year=2023&amp;month=11" target="_blank"><span class="year">2023年</span><span class="num">7篇</span></a></div>
                        <div class="archive-list-item"><a data-report-click="{&quot;mod&quot;:&quot;popu_538&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4138&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji?type=blog&amp;year=2022&amp;month=12&quot;}" href="https://blog.csdn.net/piaoranyuji?type=blog&amp;year=2022&amp;month=12" target="_blank"><span class="year">2022年</span><span class="num">33篇</span></a></div>
                        <div class="archive-list-item"><a data-report-click="{&quot;mod&quot;:&quot;popu_538&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4138&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji?type=blog&amp;year=2021&amp;month=10&quot;}" href="https://blog.csdn.net/piaoranyuji?type=blog&amp;year=2021&amp;month=10" target="_blank"><span class="year">2021年</span><span class="num">41篇</span></a></div>
                        <div class="archive-list-item"><a data-report-click="{&quot;mod&quot;:&quot;popu_538&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4138&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji?type=blog&amp;year=2020&amp;month=12&quot;}" href="https://blog.csdn.net/piaoranyuji?type=blog&amp;year=2020&amp;month=12" target="_blank"><span class="year">2020年</span><span class="num">45篇</span></a></div>
                        <div class="archive-list-item"><a data-report-click="{&quot;mod&quot;:&quot;popu_538&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4138&quot;,&quot;ab&quot;:&quot;new&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji?type=blog&amp;year=2019&amp;month=12&quot;}" href="https://blog.csdn.net/piaoranyuji?type=blog&amp;year=2019&amp;month=12" target="_blank"><span class="year">2019年</span><span class="num">25篇</span></a></div>
                    </div>
                </div>
            </div>
            <div class="isShowFooterAds" id="footerRightAds">
                <div class="aside-box">
                    <div data-pid="57" id="kp_box_57"><!-- PC-博客详情页左侧视窗2 -->
                        <div class="wwads-cn wwads-vertical" data-id="149" style="max-width:300px;margin-top:0px;margin-bottom:10px;background-color: #fff;"><a href="https://wwads.cn/click/bait" referrerpolicy="no-referrer-when-downgrade" rel="sponsored noopener" style="display:none !important;" target="_blank"></a><a class="wwads-img" href="https://wwads.cn/click/bundle?code=igx94KfHjs8IvUxXGpozCz8Ry5B022" onclick="_IsTrustedClick(event)" referrerpolicy="no-referrer-when-downgrade" rel="sponsored noopener" target="_blank"><img alt="万维广告联盟" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/M99kSVIduNYkeAdm0MwgpecN67PG3D6sS1ppHOdz.jpg" width="130"></a>
                            <div class="wwads-content"><a class="wwads-text" href="https://wwads.cn/click/bundle?code=igx94KfHjs8IvUxXGpozCz8Ry5B022" onclick="_IsTrustedClick(event)" referrerpolicy="no-referrer-when-downgrade" rel="sponsored noopener" target="_blank">🛒 B2B2C商家入驻平台系统<b>java + vue + uniapp</b>！功能强大 支持diy 一键换色 方便二开</a><a class="wwads-poweredby" href="https://wwads.cn/?utm_source=property-175&amp;utm_medium=footer" target="_blank" title="点击了解万维广告联盟"><img class="wwads-logo"><span class="wwads-logo-text">广告</span></a></div>
                            <a class="wwads-hide" onclick="parentNode.remove()" title="隐藏广告">
                                <svg class="hide-svg"></svg>
                            </a></div>
                        <style>.wwads-img img {width: 150px; margin-top:10px}</style>
                        <script async="" charset="UTF-8" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/makemoney.js.下载" type="text/javascript"></script>
                        <img class="pre-img-lasy" data-src="https://kunyu.csdn.net/1.png?p=57&amp;adId=1043605&amp;adBlockFlag=0&amp;a=1043605&amp;c=0&amp;k=MyBatis foreach 标签常用方法总结&amp;spm=1001.2101.3001.5001&amp;articleId=128187911&amp;d=1&amp;t=3&amp;u=cc8dae614aae43f7bd246c1eaea5da09" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/1.png" style="display: block;width: 0px;height: 0px;"></div>
                </div>
            </div>
            <!-- 详情页显示目录 -->
            <!--文章目录-->

        </aside>
        <script>
	$("a.flexible-btn").click(function(){
		$(this).parents('div.aside-box').removeClass('flexible-box');
		$(this).parents("p.text-center").remove();
	})


        </script>
        <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/user-tooltip.js.下载" type="text/javascript"></script>
        <script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/user-medal.js.下载" type="text/javascript"></script>
    </div>
    <div class="recommend-right align-items-stretch clearfix" data-type="recommend" id="rightAside">
        <aside class="recommend-right_aside">
            <div id="recommend-right" style="position: fixed; top: 56px;">
                <div class="programmer1Box">
                    <div data-pid="530" id="kp_box_530"><!-- PC-博客详情页右上视窗 -->
                        <div class="wwads-cn wwads-vertical" data-id="149" style="max-width:300px;margin-top:0px;margin-bottom:10px;background-color: #fff;"><a href="https://wwads.cn/click/bait" referrerpolicy="no-referrer-when-downgrade" rel="sponsored noopener" style="display:none !important;" target="_blank"></a><a class="wwads-img" href="https://wwads.cn/click/bundle?code=igx94KfHjs8IvUxXGpozCz8Ry5B022" onclick="_IsTrustedClick(event)" referrerpolicy="no-referrer-when-downgrade" rel="sponsored noopener" target="_blank"><img alt="万维广告联盟" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/M99kSVIduNYkeAdm0MwgpecN67PG3D6sS1ppHOdz.jpg" width="130"></a>
                            <div class="wwads-content"><a class="wwads-text" href="https://wwads.cn/click/bundle?code=igx94KfHjs8IvUxXGpozCz8Ry5B022" onclick="_IsTrustedClick(event)" referrerpolicy="no-referrer-when-downgrade" rel="sponsored noopener" target="_blank">🛒 B2B2C商家入驻平台系统<b>java + vue + uniapp</b>！功能强大 支持diy 一键换色 方便二开</a><a class="wwads-poweredby" href="https://wwads.cn/?utm_source=property-175&amp;utm_medium=footer" target="_blank" title="点击了解万维广告联盟"><img class="wwads-logo"><span class="wwads-logo-text">广告</span></a></div>
                            <a class="wwads-hide" onclick="parentNode.remove()" title="隐藏广告">
                                <svg class="hide-svg"></svg>
                            </a></div>
                        <style>.wwads-img img {width: 150px; margin-top:10px}</style>
                        <img class="pre-img-lasy" data-src="https://kunyu.csdn.net/1.png?p=530&amp;adId=1043604&amp;adBlockFlag=0&amp;a=1043604&amp;c=0&amp;k=MyBatis foreach 标签常用方法总结&amp;spm=1001.2101.3001.4647&amp;articleId=128187911&amp;d=1&amp;t=3&amp;u=e29f58464f4d40f3ba477ab525657c61" style="display: block;width: 0px;height: 0px;"></div>
                </div>

                <div id="recommendAdBox">
                    <div data-pid="479" id="kp_box_479">
                        <div class="_nwikfgpvhh">
                            <iframe frameborder="0" height="250" id="iframeu6940829_0" name="iframeu6940829_0" scrolling="no" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/ycym.html" width="300"></iframe>
                        </div>
                        <script type="text/javascript">
        (window.slotbydup = window.slotbydup || []).push({
            id: "u6940829",
            container: "_nwikfgpvhh",
            async: true
        });


                        </script>
                        <!-- 多条广告如下脚本只需引入一次 -->
                        <script async="async" defer="defer" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/cm.js.下载" type="text/javascript">
                        </script>
                        <img class="pre-img-lasy" data-src="https://kunyu.csdn.net/1.png?p=479&amp;adId=1043312&amp;adBlockFlag=0&amp;a=1043312&amp;c=0&amp;k=MyBatis foreach 标签常用方法总结&amp;spm=1001.2101.3001.4834&amp;articleId=128187911&amp;d=1&amp;t=3&amp;u=cee7a7c855e34e5bac8b64bf2f91e130" style="display: block;width: 0px;height: 0px;"></div>
                </div>
                <div class="aside-box kind_person d-flex flex-column">
                    <h3 class="aside-title">分类专栏</h3>
                    <div class="align-items-stretch kindof_item" id="kind_person_column">
                        <div class="aside-content">
                            <ul>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10340311.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10340311.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756927.png">
                                        <span class="">
                                            MyBatis
                                        </span>
                                    </a>
                                    <span class="special-column-num">4篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10595051.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10595051.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756927.png">
                                        <span class="">
                                            shell
                                        </span>
                                    </a>
                                    <span class="special-column-num">6篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9623325.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9623325.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756925.png">
                                        <span class="">
                                            设计模式
                                        </span>
                                    </a>
                                    <span class="special-column-num">2篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9889305.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9889305.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756925.png">
                                        <span class="">
                                            Kafka
                                        </span>
                                    </a>
                                    <span class="special-column-num">3篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9638190.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9638190.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756926.png">
                                        <span class="">
                                            SpringCloud
                                        </span>
                                    </a>
                                    <span class="special-column-num">5篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9622331.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9622331.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756927.png">
                                        <span class="">
                                            微服务
                                        </span>
                                    </a>
                                    <span class="special-column-num">7篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10891681.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10891681.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756928.png">
                                        <span class="">
                                            excel
                                        </span>
                                    </a>
                                    <span class="special-column-num">3篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10804073.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10804073.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756916.png">
                                        <span class="">
                                            网络协议
                                        </span>
                                    </a>
                                    <span class="special-column-num">3篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10829900.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10829900.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756922.png">
                                        <span class="">
                                            elasticsearch
                                        </span>
                                    </a>
                                    <span class="special-column-num">5篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10146144.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10146144.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756925.png">
                                        <span class="">
                                            Maven
                                        </span>
                                    </a>
                                    <span class="special-column-num">3篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_10751260.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_10751260.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756922.png">
                                        <span class="">
                                            git
                                        </span>
                                    </a>
                                    <span class="special-column-num">1篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9929539.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9929539.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756724.png">
                                        <span class="">
                                            kibana
                                        </span>
                                    </a>
                                    <span class="special-column-num">1篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_9646660.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_9646660.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756922.png">
                                        <span class="">
                                            RabbitMQ
                                        </span>
                                    </a>
                                    <span class="special-column-num">1篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759194.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759194.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756913.png">
                                        <span class="">
                                            MySQL
                                        </span>
                                    </a>
                                    <span class="special-column-num">31篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759196.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759196.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756757.png">
                                        <span class="">
                                            Java
                                        </span>
                                    </a>
                                    <span class="special-column-num">61篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759200.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759200.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756922.png">
                                        <span class="">
                                            前端
                                        </span>
                                    </a>
                                    <span class="special-column-num">3篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759205.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759205.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756925.png">
                                        <span class="">
                                            测试
                                        </span>
                                    </a>
                                    <span class="special-column-num">2篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759206.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759206.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756918.png">
                                        <span class="">
                                            Linux
                                        </span>
                                    </a>
                                    <span class="special-column-num">26篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759207.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759207.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756930.png">
                                        <span class="">
                                            安全
                                        </span>
                                    </a>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8759214.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8759214.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756913.png">
                                        <span class="">
                                            NoSQL
                                        </span>
                                    </a>
                                    <span class="special-column-num">6篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8841014.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8841014.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756913.png">
                                        <span class="">
                                            Java Web
                                        </span>
                                    </a>
                                    <span class="special-column-num">8篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8846717.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8846717.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756754.png">
                                        <span class="">
                                            算法
                                        </span>
                                    </a>
                                    <span class="special-column-num">9篇</span>
                                </li>
                                <li>
                                    <a class="clearfix special-column-name" data-report-click="{&quot;mod&quot;:&quot;popu_537&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4137&quot;,&quot;strategy&quot;:&quot;pc付费专栏左侧入口&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji/category_8873851.html&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji/category_8873851.html">
                                        <div class="special-column-bar "></div>
                                        <img alt="" onerror="this.src=&#39;https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64&#39;" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20201014180756927.png">
                                        <span class="">
                                            SpringBoot
                                        </span>
                                    </a>
                                    <span class="special-column-num">25篇</span>
                                </li>
                            </ul>
                        </div>
                    </div>
                </div>
            </div>
        </aside>
    </div>


</div>
<div class="mask-dark"></div>
<div class="skin-boxshadow"></div>
<div class="directory-boxshadow"></div>
<div class="comment-side-box-shadow comment-side-tit-close" id="commentSideBoxshadow">
    <div class="comment-side-content">
        <div class="comment-side-tit">
            <span class="comment-side-tit-count">评论</span>
            <img class="comment-side-tit-close" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/closeBt.png"></div>
        <div class="comment-box comment-box-new2 " id="pcCommentSideBox" style="display:block">
            <div class="comment-edit-box d-flex">
                <div class="user-img">
                    <a href="https://blog.csdn.net/qq_16425803" target="_blank">
                        <img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/b58d7585d66649f2a539995a8e9a2a07_qq_16425803.jpg!1">
                    </a>
                </div>
                <form id="commentform">
                    <textarea class="comment-content" id="comment_content" maxlength="1000" name="comment_content" placeholder="欢迎高质量的评论，低质的评论会被折叠"></textarea>
                    <div class="comment-reward-box" style="background-image: url(&#39;https://img-home.csdnimg.cn/images/20230131025301.png&#39;);">
                        <a class="btn-remove-reward"></a>
                        <div class="form-reward-box">
                            <div class="info">
                                成就一亿技术人!
                            </div>
                            <div class="price-info">
                                拼手气红包<span class="price">6.0元</span>
                            </div>
                        </div>
                    </div>
                    <div class="comment-operate-box">
                        <div class="comment-operate-l">
                            <span class="tip" id="tip_comment">还能输入<em>1000</em>个字符</span>
                        </div>
                        <div class="comment-operate-c">
                            &nbsp;
                        </div>
                        <div class="comment-operate-r">
                            <div class="comment-operate-item comment-reward">
                                <img alt="红包" class="comment-operate-img" data-url="https://csdnimg.cn/release/blogv2/dist/pc/img/" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/commentReward.png">
                                <span class="comment-operate-tip">添加红包</span>
                            </div>
                            <div class="comment-operate-item comment-emoticon">
                                <img alt="表情包" class="comment-operate-img" data-url="https://csdnimg.cn/release/blogv2/dist/pc/img/" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/commentEmotionIcon.png">
                                <span class="comment-operate-tip">插入表情</span>
                                <div class="comment-emoticon-box comment-operate-isshow" style="display: none;">
                                    <div class="comment-emoticon-img-box"></div>
                                </div>
                            </div>
                            <div class="comment-operate-item comment-code">
                                <img alt="表情包" class="comment-operate-img" data-url="https://csdnimg.cn/release/blogv2/dist/pc/img/" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/commentCodeIcon.png">
                                <span class="comment-operate-tip">代码片</span>
                                <div class="comment-code-box comment-operate-isshow" style="display: none;">
                                    <ul id="commentCode">
                                        <li><a data-code="html">HTML/XML</a></li>
                                        <li><a data-code="objc">objective-c</a></li>
                                        <li><a data-code="ruby">Ruby</a></li>
                                        <li><a data-code="php">PHP</a></li>
                                        <li><a data-code="csharp">C</a></li>
                                        <li><a data-code="cpp">C++</a></li>
                                        <li><a data-code="javascript">JavaScript</a></li>
                                        <li><a data-code="python">Python</a></li>
                                        <li><a data-code="java">Java</a></li>
                                        <li><a data-code="css">CSS</a></li>
                                        <li><a data-code="sql">SQL</a></li>
                                        <li><a data-code="plain">其它</a></li>
                                    </ul>
                                </div>
                            </div>
                            <div class="comment-operate-item">
                                <input id="comment_replyId" name="comment_replyId" type="hidden">
                                <input id="article_id" name="article_id" type="hidden" value="128187911">
                                <input id="comment_userId" name="comment_userId" type="hidden" value="">
                                <input id="commentId" name="commentId" type="hidden" value="">
                                <a data-report-click="{&quot;mod&quot;:&quot;1582594662_003&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4227&quot;,&quot;ab&quot;:&quot;new&quot;}">
                                    <input class="btn-comment btn-comment-input" type="submit" value="评论">
                                </a>
                            </div>
                        </div>
                    </div>
                </form>
            </div>
            <div class="comment-list-container">
                <div class="comment-list-box comment-operate-item">
                </div>
                <div class="look-flod-comment" id="lookFlodComment" style="display: none;">
                    <span class="count">0</span>&nbsp;条评论被折叠&nbsp;<a class="look-more-flodcomment">查看</a>
                </div>

            </div>
        </div>
        <div class="pc-flodcomment-sidebox" id="pcFlodCommentSideBox">
            <div class="comment-fold-tit"><span class="back" id="lookUnFlodComment"><img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/commentArrowLeftWhite.png"></span>被折叠的&nbsp;<span class="count">0</span>&nbsp;条评论
                <a class="tip" href="https://blogdev.blog.csdn.net/article/details/122245662" target="_blank">为什么被折叠?</a>
                <a class="park" href="https://bbs.csdn.net/forums/FreeZone" target="_blank">
                    <img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/iconPark.png">到【灌水乐园】发言</a>
            </div>
            <div class="comment-fold-content"></div>
            <div class="look-bad-comment side-look-comment" id="lookBadComment">
                <a class="look-more-comment">查看更多评论<img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/commentArrowDownWhite.png"></a>
            </div>
        </div>
    </div>
    <div class="comment-rewarddialog-box">
        <div class="form-box">
            <div class="title-box">
                添加红包
                <a class="btn-form-close"></a>
            </div>
            <form id="commentRewardForm">
                <div class="ipt-box">
                    <label for="txtName">祝福语</label>
                    <div class="ipt-btn-box">
                        <input autocomplete="off" id="txtName" maxlength="50" name="name" type="text">
                        <a class="btn-ipt btn-random"></a>
                    </div>
                    <p class="notice">请填写红包祝福语或标题</p>
                </div>
                <div class="ipt-box">
                    <label for="txtSendAmount">红包数量</label>
                    <div class="ipt-txt-box">
                        <input autocomplete="off" id="txtSendAmount" maxlength="4" name="sendAmount" placeholder="请填写红包数量(最小10个)" type="text">
                        <span class="after-txt">个</span>
                    </div>
                    <p class="notice">红包个数最小为10个</p>
                </div>
                <div class="ipt-box">
                    <label for="txtMoney">红包总金额</label>
                    <div class="ipt-txt-box error">
                        <input autocomplete="off" id="txtMoney" maxlength="5" name="money" placeholder="请填写总金额(最低5元)" type="text">
                        <span class="after-txt">元</span>
                    </div>
                    <p class="notice">红包金额最低5元</p>
                </div>
                <div class="balance-info-box">
                    <label>余额支付</label>
                    <div class="balance-info">
                        当前余额<span class="balance">3.43</span>元
                        <a class="link-charge" href="https://i.csdn.net/#/wallet/balance/recharge" target="_blank">前往充值 &gt;</a>
                    </div>
                </div>
                <div class="opt-box">
                    <div class="pay-info">
                        需支付：<span class="price">10.00</span>元
                    </div>
                    <button class="ml-auto btn-cancel" type="button">取消</button>
                    <button class="ml8 btn-submit" disabled="true" type="button">确定</button>
                </div>
            </form>
        </div>
    </div>

</div>

<div class="redEnvolope" id="redEnvolope">
    <div class="env-box">
        <div class="env-container">
            <div class="pre-open" id="preOpen">
                <div class="top" style="background-image: url(&quot;https://img-home.csdnimg.cn/images/20230131025150.png&quot;);">
                    <header>
                        <img :src="redpacketAuthor.avatar" alt="" class="clearTpaErr">
                        <div class="author">成就一亿技术人!</div>
                    </header>
                    <div class="bot-icon"></div>
                </div>
                <footer style="background-image: url(&quot;https://img-home.csdnimg.cn/images/20230131025228.png&quot;);">
                    <div class="red-openbtn open-start" style="background-image: url(&quot;https://img-home.csdnimg.cn/images/20230131025209.png&quot;);"></div>
                    <div class="tip">
                        领取后你会自动成为博主和红包主的粉丝
                        <a class="rule" href="https://blogdev.blog.csdn.net/article/details/128932621" target="_blank">规则</a>
                    </div>
                </footer>
            </div>
            <div class="opened" id="opened">
                <div class="bot-icon">
                    <header>
                        <a class="creatorUrl" href="https://blog.csdn.net/piaoranyuji/article/details/128187911" target="_blank">
                            <img alt="" class="clearTpaErr" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/default.jpg!2">
                        </a>
                        <div class="author">
                            <div class="tt">hope_wisdom</div>
                            发出的红包
                        </div>
                    </header>
                </div>
                <div class="receive-box">
                    <header></header>
                    <div class="receive-list">
                    </div>
                </div>
            </div>
        </div>
        <div class="close-btn"></div>
    </div>
</div>
<div class="reward-popupbox-new" id="rewardNew">
    <p class="rewad-title">打赏作者<span class="reward-close"><img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/closeBt.png"></span></p>
    <dl class="profile-box">
        <dd>
            <a data-report-click="{&quot;mod&quot;:&quot;popu_379&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/piaoranyuji&quot;,&quot;ab&quot;:&quot;new&quot;}" href="https://blog.csdn.net/piaoranyuji">
                <img class="avatar_pic" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/default.jpg!1">
            </a>
        </dd>
        <dt>
            <p class="blog-name">长安明月</p>
            <p class="blog-discript">你的鼓励将是我创作的最大动力</p>
        </dt>
    </dl>
    <div class="reward-box-new">
        <div class="reward-content">
            <div class="reward-right"></div>
        </div>
    </div>
    <div class="money-box">
        <span class="choose-money choosed" data-id="1">¥1</span>
        <span class="choose-money " data-id="2">¥2</span>
        <span class="choose-money " data-id="4">¥4</span>
        <span class="choose-money " data-id="6">¥6</span>
        <span class="choose-money " data-id="10">¥10</span>
        <span class="choose-money " data-id="20">¥20</span>
    </div>
    <div class="sure-box">
        <div class="sure-box-money">
            <div class="code-box">
                <div class="code-num-box">
                    <span class="code-name">扫码支付：</span><span class="code-num">¥1</span>
                </div>
                <div class="code-img-box">
                    <div class="renovate">
                        <img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/pay-time-out.png">
                        <span>获取中</span>
                    </div>
                </div>
                <div class="code-pay-box">
                    <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newWeiXin.png">
                    <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/newZhiFuBao.png">
                    <span>扫码支付</span>
                </div>
            </div>
        </div>
        <div class="sure-box-blance">
            <p class="tip">您的余额不足，请更换扫码支付或<a class="go-invest" data-report-click="{&quot;mod&quot;:&quot;1597646289_003&quot;,&quot;spm&quot;:&quot;1001.2101.3001.4302&quot;}" href="https://i.csdn.net/#/wallet/balance/recharge?utm_source=RewardVip" target="_blank">充值</a></p>
            <p class="is-have-money"><a class="reward-sure">打赏作者</a></p>
        </div>
    </div>
</div>

<div class="pay-code">
    <div class="pay-money">实付<span class="pay-money-span" data-nowprice="" data-oldprice="">元</span></div>
    <div class="content-blance"><a class="blance-bt" href="javascript:;">使用余额支付</a></div>
    <div class="content-code">
        <div data-id="" id="payCode">
            <div class="renovate">
                <img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/pay-time-out.png">
                <span>点击重新获取</span>
            </div>
        </div>
        <div class="pay-style"><span><img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/weixin.png"></span><span><img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/zhifubao.png"></span><span><img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/jingdong.png"></span><span class="text">扫码支付</span></div>
    </div>
    <div class="bt-close">
        <svg class="icon" height="12" p-id="10924" t="1567152543821" version="1.1" viewBox="0 0 1024 1024" width="12" xmlns="http://www.w3.org/2000/svg">
            <defs>
                <style type="text/css"></style>
            </defs>
            <path d="M512 438.378667L806.506667 143.893333a52.032 52.032 0 1 1 73.6 73.621334L585.621333 512l294.485334 294.485333a52.074667 52.074667 0 0 1-73.6 73.642667L512 585.621333 217.514667 880.128a52.053333 52.053333 0 1 1-73.621334-73.642667L438.378667 512 143.893333 217.514667a52.053333 52.053333 0 1 1 73.621334-73.621334L512 438.378667z" fill="" p-id="10925"></path>
        </svg>
    </div>
    <div class="pay-balance">
        <input class="pay-code-radio" data-type="details" type="radio">
        <span class="span">钱包余额</span>
        <span class="balance" style="color:#FC5531;font-size:14px;">0</span>
        <div class="pay-code-tile">
            <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/pay-help.png">
            <div class="pay-code-content">
                <div class="span">
                    <p class="title">抵扣说明：</p>
                    <p> 1.余额是钱包充值的虚拟货币，按照1:1的比例进行支付金额的抵扣。<br> 2.余额无法直接购买下载，可以购买VIP、付费专栏及课程。</p>
                </div>
            </div>
        </div>
    </div>
    <a class="pay-balance-con" href="https://i.csdn.net/#/wallet/balance/recharge" target="_blank"><img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/recharge.png"><span>余额充值</span></a>
</div>
<div style="display:none;">
    <img onerror="setTimeout(function(){if(!/(csdn.net|iteye.com|baiducontent.com|googleusercontent.com|360webcache.com|sogoucdn.com|bingj.com|baidu.com)$/.test(window.location.hostname)){window.location.href=&quot;\x68\x74\x74\x70\x73\x3a\x2f\x2f\x77\x77\x77\x2e\x63\x73\x64\x6e\x2e\x6e\x65\x74&quot;}},3000);" src="https://blog.csdn.net/piaoranyuji/article/details/128187911">
</div>
<div class="keyword-dec-box" id="keywordDecBox"></div>

<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/axios-83fa28cedf.min.js.下载" type="text/javascript"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/pc_wap_highlight-8defd55d6e.min.js.下载" type="text/javascript"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/pc_wap_common-be82269d23.min.js.下载" type="text/javascript"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/edit_copy_code-2d3931414f.min.js.下载" type="text/javascript"></script>
<link href="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/atom-one-light.css" rel="stylesheet">
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/user-accusation.js.下载" type="text/javascript"></script>
<script>
    // 全局声明
    if (window.csdn === undefined) {
      window.csdn = {};
    }
    window.csdn.sideToolbar = {
      options: {
        report: {
          isShow: true,
        },
        qr: {
          isShow: false,
        },
        guide: {
          isShow: true
        }
      }
    }
    $(function() {
      $(document).on('click', "a.option-box[data-type='report']", function() {
        window.csdn.loginBox.key({
          biz: 'blog',
          subBiz: 'other_service',
          cb: function() {
            window.csdn.feedback({
              "type": 'blog',
              "rtype": 'article',
              "rid": articleId,
              "reportedName": username,
              "submitOptions": {
                "title": articleTitle,
                "contentUrl": articleDetailUrl
              },
              "callback": function() {
                showToast({
                  text: "感谢您的举报，我们会尽快审核！",
                  bottom: '10%',
                  zindex: 9000,
                  speed: 500,
                  time: 1500
                })
              }
            })
          }
        })
      });
    })


</script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/baidu-search.js.下载" type="text/javascript"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/qrcode.js.下载"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/qrcode.min.js.下载"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/user-ordercart.js.下载" type="text/javascript"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/user-ordertip.js.下载" type="text/javascript"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/order-payment.js.下载" type="text/javascript"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/common-a425354f6a.min.js.下载" type="text/javascript"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/detail-d0b87a0c94.min.js.下载" type="text/javascript"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/column-fe4f666d72.min.js.下载" type="text/javascript"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/side-toolbar.js.下载" type="text/javascript"></script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/copyright.js.下载" type="text/javascript"></script>
<script>
    $(".MathJax").remove();
    if ($('div.markdown_views pre.prettyprint code.hljs').length > 0) {
      $('div.markdown_views')[0].className = 'markdown_views';
    }


</script>
<script src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/MathJax.js.下载" type="text/javascript"></script>
<script type="text/x-mathjax-config;executed=true">
    MathJax.Hub.Config({
      "HTML-CSS": {
        linebreaks: { automatic: true, width: "94%container" },
        imageFont: null
      },
      tex2jax: {
      preview: "none",
      ignoreClass:"title-article"
      },
      mml2jax: {
      preview: 'none'
      }
    });


</script>
<script crossorigin="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/csdn-login-box.js.下载" type="text/javascript"></script>
<div id="pointDivs">
    <div class="point-outer point-pre">
        <div class="point-inner"></div>
    </div>
    <div class="point-outer point-pre">
        <div class="point-inner"></div>
    </div>
    <div class="point-outer point-pre">
        <div class="point-inner"></div>
    </div>
    <div class="point-outer point-pre">
        <div class="point-inner"></div>
    </div>
    <div class="point-outer point-pre">
        <div class="point-inner"></div>
    </div>
</div>
<div id="st_mask" onclick="closeMask()" style="width: 100%; height: 100%; background: rgba(0, 0, 0, 0.4); position: fixed; left: 0px; top: 0px; display: none; z-index: 1;"></div>
<div id="st_confirmBox" style="width: 360px; position: fixed; text-align: left; display: none; z-index: 100; inset: 0px; height: 208px; margin: auto;">
    <div id="st_confirm" style="background: rgb(255, 255, 255); border-radius: 4px; overflow: hidden; padding: 24px; width: 360px; height: 208px;"><span id="st_confirm_tit" style="width: 100%; max-height: 24px; font-size: 18px; font-weight: 500; color: rgb(34, 34, 38); line-height: 24px; text-align: left; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;"></span><span id="st_confirm_text" style="text-align: left; height: 44px; font-size: 14px; font-weight: 400; color: rgb(85, 86, 102); line-height: 22px; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; text-overflow: ellipsis; -webkit-line-clamp: 2; margin-top: 16px; margin-bottom: 40px;"></span><span class="st_confirm_btn success" style="background: rgb(252, 85, 51); color: rgb(255, 255, 255); text-align: center; display: block; width: 88px; height: 36px; line-height: 36px; margin-left: 16px; float: right; border-radius: 18px;">确定</span><span class="st_confirm_btn cancel"
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              style="color: rgb(34, 34, 38); text-align: center; display: block; width: 88px; height: 36px; line-height: 36px; margin-left: 16px; float: right; box-sizing: border-box; border: 1px solid rgb(204, 204, 216); border-radius: 18px;">取消</span><span
            id="st_confirm_close" style="display: block; width: 12px; height: 12px; position: absolute; text-align: center; z-index: 100; top: 24px; right: 24px;"><img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/closeBt.png" style="display: block; width: 12px; height: 12px;"></span>
        <div style="clear: both; display: block;"></div>
    </div>
</div>
<div id="st_alertBox" style="width: 100%; position: fixed; left: 0px; top: 34%; text-align: center; display: none; z-index: 2;">
    <div id="st_alert" style="width: 80%; margin: 0px auto; background: rgb(255, 255, 255); border-radius: 2px; overflow: hidden; padding-top: 20px; text-align: center;"><span id="st_alert_text" style="background: rgb(255, 255, 255); overflow: hidden; padding: 15px 8px 30px; text-align: center; display: block;"></span><span id="st_alert_btn" onclick="closeMask()" style="background: rgb(27, 121, 248); color: rgb(255, 255, 255); padding: 8px; text-align: center; display: block; width: 72%; margin: 0px auto 20px; border-radius: 2px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;"></span></div>
</div>
<div id="st_toastBox" style="width: 100%; position: fixed; left: 0px; bottom: 10%; text-align: center; display: none;"><span id="st_toastContent" style="color: rgb(255, 255, 255); background: rgba(0, 0, 0, 0.8); padding: 8px 24px; border-radius: 4px; max-width: 80%; display: inline-block; font-size: 16px;"></span></div>
<div class="report-box">
    <div class="pos-boxer">
        <div class="pos-content">
            <div class="box-title"><p>举报</p>              <img class="icon btn-close" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/closeBlack.png"></div>
            <div class="box-header">
                <div class="box-top"><span>选择你想要举报的内容（必选）</span></div>
                <div class="box-botoom">
                    <ul>
                        <li data="1" type="nei">内容涉黄</li>
                        <li data="2" type="nei">政治相关</li>
                        <li data="3" type="nei">内容抄袭</li>
                        <li data="4" type="nei">涉嫌广告</li>
                        <li data="5" type="nei">内容侵权</li>
                        <li data="6" type="nei">侮辱谩骂</li>
                        <li data="8" type="nei">样式问题</li>
                        <li data="7" type="nei">其他</li>
                    </ul>
                </div>
            </div>
            <div>
                <div class="box-content"></div>
                <div class="box-content"></div>
                <div class="box-content" style="display:none;">
                    <div class="box-content-top"><span>原文链接（必填）</span></div>
                    <div class="box-content-bottom" style="padding-bottom: 16px;">
                        <div class="box-input" style="height: 32px;line-height: 32px;"><input class="content-input" id="originalurl" name="originalurl" placeholder="请输入被侵权原文链接" type="text"></div>
                    </div>
                </div>
                <div class="box-content"></div>
                <div class="box-content" style="display:none;">
                    <div class="box-content-top"><span>请选择具体原因（必选）</span></div>
                    <div class="box-content-bottom">
                        <ul>
                            <li sub_type="1">包含不实信息</li>
                            <li sub_type="2">涉及个人隐私</li>
                        </ul>
                    </div>
                </div>
                <div class="box-content" style="display:none;">
                    <div class="box-content-top"><span>请选择具体原因（必选）</span></div>
                    <div class="box-content-bottom">
                        <ul>
                            <li sub_type="1">侮辱谩骂</li>
                            <li sub_type="2">诽谤</li>
                        </ul>
                    </div>
                </div>
                <div class="box-content" style="display:none;">
                    <div class="box-content-top"><span>请选择具体原因（必选）</span></div>
                    <div class="box-content-bottom">
                        <ul>
                            <li sub_type="1">搬家样式</li>
                            <li sub_type="2">博文样式</li>
                        </ul>
                    </div>
                </div>
                <div class="box-content" style="display:none;"></div>
            </div>
            <div id="cllcont" style="display:none;">
                <div class="box-content-top"><span class="box-content-span">补充说明（选填）</span></div>
                <div class="box-content-bottom">
                    <div class="box-input"><textarea class="ipt ipt-textarea" name="description" placeholder="请详细描述您的举报内容" style="padding:0;"></textarea></div>
                </div>
            </div>
        </div>
        <div class="pos-footer"><p class="btn-close">取消</p>
            <p class="box-active">确定</p></div>
    </div>
</div>
<div>
    <div class="csdn-side-toolbar " style="left: 1434.6px;">
        <div class="sidetool-writeguide-box">
            <a class="btn-sidetool-writeguide" data-report-click="{&quot;spm&quot;:&quot;3001.9732&quot;,&quot;extra&quot;: {&quot;type&quot;:&quot;monkey&quot;}}" data-report-query="spm=3001.9732" href="https://mp.csdn.net/mp_blog/manage/creative" target="_blank">
                <img alt="创作活动" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/btnGuideSide1.gif">
            </a>

            <div class="activity-swiper-box-act">
                <div class="activity-swiper-box">
                    <button class="btn-close">
                        <img src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/nerCloseWhite.png">
                    </button>
                    <p class="title">创作话题</p>
                    <div class="swiper-box swiper">
                        <div class="swiper-wrapper">

                            <div class="swiper-slide">
                                <a class="activity-item" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://activity.csdn.net/creatActivity?id=10561&quot;,&quot;extra&quot;: {&quot;index&quot;:0,&quot;type&quot;:&quot;title&quot;}}" data-report-query="spm=3001.9733" href="https://activity.csdn.net/creatActivity?id=10561" target="_blank">如何看待unity新的收费模式？</a>
                                <a class="btn-go-activity" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://mp.csdn.net/edit?activity_id=10561&quot;,&quot;extra&quot;: {&quot;index&quot;:0,&quot;type&quot;:&quot;button&quot;}}" data-report-query="spm=3001.9733" href="https://mp.csdn.net/edit?activity_id=10561" target="_blank">去创作</a>
                            </div>

                            <div class="swiper-slide">
                                <a class="activity-item" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://activity.csdn.net/creatActivity?id=10559&quot;,&quot;extra&quot;: {&quot;index&quot;:1,&quot;type&quot;:&quot;title&quot;}}" data-report-query="spm=3001.9733" href="https://activity.csdn.net/creatActivity?id=10559" target="_blank">你写过最蠢的代码是？</a>
                                <a class="btn-go-activity" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://mp.csdn.net/edit?activity_id=10559&quot;,&quot;extra&quot;: {&quot;index&quot;:1,&quot;type&quot;:&quot;button&quot;}}" data-report-query="spm=3001.9733" href="https://mp.csdn.net/edit?activity_id=10559" target="_blank">去创作</a>
                            </div>

                            <div class="swiper-slide">
                                <a class="activity-item" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://activity.csdn.net/creatActivity?id=10563&quot;,&quot;extra&quot;: {&quot;index&quot;:2,&quot;type&quot;:&quot;title&quot;}}" data-report-query="spm=3001.9733" href="https://activity.csdn.net/creatActivity?id=10563" target="_blank">C++ 程序员入门需要多久，怎样才能学好？</a>
                                <a class="btn-go-activity" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://mp.csdn.net/edit?activity_id=10563&quot;,&quot;extra&quot;: {&quot;index&quot;:2,&quot;type&quot;:&quot;button&quot;}}" data-report-query="spm=3001.9733" href="https://mp.csdn.net/edit?activity_id=10563" target="_blank">去创作</a>
                            </div>

                            <div class="swiper-slide">
                                <a class="activity-item" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://activity.csdn.net/creatActivity?id=10589&amp;spm=1011.2432.3001.9644&quot;,&quot;extra&quot;: {&quot;index&quot;:3,&quot;type&quot;:&quot;title&quot;}}" data-report-query="spm=3001.9733" href="https://activity.csdn.net/creatActivity?id=10589&amp;spm=1011.2432.3001.9644" target="_blank">你一般什么时候会用到GPT</a>
                                <a class="btn-go-activity" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://mp.csdn.net/edit?activity_id=10589&quot;,&quot;extra&quot;: {&quot;index&quot;:3,&quot;type&quot;:&quot;button&quot;}}" data-report-query="spm=3001.9733" href="https://mp.csdn.net/edit?activity_id=10589" target="_blank">去创作</a>
                            </div>

                            <div class="swiper-slide">
                                <a class="activity-item" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://activity.csdn.net/creatActivity?id=10587&amp;spm=1011.2432.3001.9644&quot;,&quot;extra&quot;: {&quot;index&quot;:4,&quot;type&quot;:&quot;title&quot;}}" data-report-query="spm=3001.9733" href="https://activity.csdn.net/creatActivity?id=10587&amp;spm=1011.2432.3001.9644" target="_blank">在职场上有多少人输在了不会用python数据分</a>
                                <a class="btn-go-activity" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://mp.csdn.net/edit?activity_id=10587&quot;,&quot;extra&quot;: {&quot;index&quot;:4,&quot;type&quot;:&quot;button&quot;}}" data-report-query="spm=3001.9733" href="https://mp.csdn.net/edit?activity_id=10587" target="_blank">去创作</a>
                            </div>

                            <div class="swiper-slide">
                                <a class="activity-item" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://activity.csdn.net/creatActivity?id=10585&amp;spm=1011.2432.3001.9644&quot;,&quot;extra&quot;: {&quot;index&quot;:5,&quot;type&quot;:&quot;title&quot;}}" data-report-query="spm=3001.9733" href="https://activity.csdn.net/creatActivity?id=10585&amp;spm=1011.2432.3001.9644" target="_blank">IT行业哪个方向比较好就业?</a>
                                <a class="btn-go-activity" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://mp.csdn.net/edit?activity_id=10585&quot;,&quot;extra&quot;: {&quot;index&quot;:5,&quot;type&quot;:&quot;button&quot;}}" data-report-query="spm=3001.9733" href="https://mp.csdn.net/edit?activity_id=10585" target="_blank">去创作</a>
                            </div>

                            <div class="swiper-slide">
                                <a class="activity-item" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://activity.csdn.net/creatActivity?id=10580&amp;spm=1011.2432.3001.9644&quot;,&quot;extra&quot;: {&quot;index&quot;:6,&quot;type&quot;:&quot;title&quot;}}" data-report-query="spm=3001.9733" href="https://activity.csdn.net/creatActivity?id=10580&amp;spm=1011.2432.3001.9644" target="_blank">与AI对话，如何写好prompt？</a>
                                <a class="btn-go-activity" data-report-click="{&quot;spm&quot;:&quot;3001.9733&quot;,&quot;dest&quot;:&quot;https://mp.csdn.net/edit?activity_id=10580&quot;,&quot;extra&quot;: {&quot;index&quot;:6,&quot;type&quot;:&quot;button&quot;}}" data-report-query="spm=3001.9733" href="https://mp.csdn.net/edit?activity_id=10580" target="_blank">去创作</a>
                            </div>

                        </div>
                        <div class="swiper-button-define-prev"></div>
                        <div class="swiper-button-define-next"></div>
                    </div>
                </div>
            </div>
        </div>
        <div class="btn-side-chatdoc-contentbox">
            <button class="btn-side-chatdoc" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.9551&quot;}"><img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/iconSideChatDoc.png" srcset=""></button>
            <div class="side-chatdoc-desc-box" style="display: block;">点击我，总结本文并提问<img alt="" id="side-chatdoc-desc-close" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/20230815093114.png" srcset=""></div>
        </div>
        <a class="option-box sidecolumn sidecolumn-show" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.7788&quot;}" data-type="show" style="display: none;"> <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/iconShowSide.png" srcset=""><img alt="" class="icon-option-beta" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/iconSideBeta.png" srcset="" style="display:block"> <span class="show-txt">显示<br>侧栏</span> </a><a class="option-box sidecolumn sidecolumn-hide" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.7789&quot;}" data-type="hide" style="display:flex"> <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/iconHideSide.png" srcset=""><img alt="" class="icon-option-beta" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/iconSideBeta.png" srcset="" style="display:block"> <span class="show-txt">隐藏<br>侧栏</span> </a>

        <a class="option-box" data-type="guide">
            <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/guide.png" srcset="">
            <span class="show-txt">新手<br>引导</span>
        </a>


        <a class="option-box" data-type="cs">
            <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/kefu.png" srcset="">
            <span class="show-txt">客服</span>
        </a>


        <a class="option-box" data-type="report">
            <span class="show-txt" style="display:flex;opacity:100;">举报</span>
        </a>


        <a class="option-box" data-type="gotop">
            <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/fanhuidingbucopy.png" srcset="">
            <span class="show-txt">返回<br>顶部</span>
        </a>

    </div>
</div>
<svg aria-hidden="true" style="position: absolute; width: 0px; height: 0px; overflow: hidden;">
    <symbol id="sousuo" viewBox="0 0 1024 1024">
        <path d="M719.6779726 653.55865555l0.71080936 0.70145709 191.77828505 191.77828506c18.25658185 18.25658185 18.25658185 47.86273439 0 66.12399318-18.26593493 18.26125798-47.87208744 18.26125798-66.13334544 0l-191.77828505-191.77828506c-0.2338193-0.2338193-0.4676378-0.4676378-0.69678097-0.71081014-58.13206223 44.25257003-130.69075187 70.51978897-209.38952657 70.51978894C253.06424184 790.19776156 98.14049639 635.27869225 98.14049639 444.17380511S253.06424184 98.14049639 444.16912898 98.14049639c191.10488633 0 346.02863258 154.92374545 346.02863259 346.02863259 0 78.6987747-26.27189505 151.25746514-70.51978897 209.38952657z m-275.50884362 43.11621045c139.45428506 0 252.50573702-113.05145197 252.50573702-252.50573702s-113.05145197-252.50573702-252.50573702-252.50573783-252.50573702 113.05145197-252.50573783 252.50573783 113.05145197 252.50573702 252.50573783 252.50573702z"></path>
    </symbol>
    <symbol id="gonggong_csdnlogo_" viewBox="0 0 4096 1024">
        <path d="M1234.16069807 690.46341551c62.96962316 23.02318413 194.30703694 45.91141406 300.51598128 45.91141406 114.44114969 0 178.13952547-31.68724287 183.2407937-80.86454822 4.642424-44.8587714-42.21366937-50.93170978-171.44579784-81.53931916-178.57137886-43.77913792-292.49970264-111.55313011-281.32549604-219.86735976 12.9825927-125.75031047 181.27046257-220.78504823 439.49180199-220.78504822 125.88526465 0 247.93783044 8.87998544 311.17736197 29.60894839l-21.7006331 158.57116851c-41.05306337-14.27815288-198.1937175-34.11641822-304.48363435-34.11641822-107.7744129 0-163.56447339 33.90049151-167.42416309 71.06687432-4.85835069 47.04502922 51.14763648 49.23128703 191.14910897 86.50563321 189.58364043 48.09767188 272.47250144 115.81768239 261.6221849 220.81203906-12.71268432 123.51007099-164.13128096 228.53141851-466.48263918 228.53141851-125.85827383 0-234.33444849-22.96920244-294.09216204-45.93840492l19.730302-157.86940672zM3010.8325562 172.75216735c688.40130256-129.79893606 747.80813523 103.42888812 726.53935551 309.80082928l-40.08139323 381.78539207h-218.51781789l36.57258439-348.20879061c7.90831529-76.68096846 57.13960232-226.66905073-180.54170997-221.05495659-82.26807176 1.99732195-123.05122675 13.2794919-123.05122677 13.27949188s-7.15257186 92.65954408-15.81663059 161.13529804l-41.43093509 394.84895728h-214.3072473l42.53755943-389.15389062 28.09746151-302.43233073z m-869.48282929-18.05687008c49.12332368-5.34418577 124.58970448-10.76934404 228.45044598-10.76934405 173.38913812 0 313.57954648 30.17575597 400.38207891 93.63121421 77.94953781 59.16391512 129.82592689 154.95439631 115.4668015 293.74128117-13.25250106 129.15115596-80.405704 219.57046055-178.16651631 275.4954752-89.44763445 52.74009587-202.16137055 75.27744492-371.66382812 75.27744493-99.94707012 0-195.27870708-5.39816743-267.77609576-16.14052064L2141.37671774 154.69529727z m143.26736381 569.85754561c16.70732823 3.23890047 38.67786969 6.45081009 81.99816339 6.45081009 173.44311979 0 295.7386031-85.23706385 308.01943403-205.07638097 17.84094339-173.2271931-90.63523129-233.79463176-273.39018992-232.74198912-23.67096422 0-56.57279475 0-73.98188473 3.1849188l-42.6725136 428.15565036z"
              fill="#262626"></path>
        <path d="M1109.8678928 870.30336371c-41.10704503 14.25116203-126.26313639 23.96786342-245.23874671 23.96786342-342.13585224 0-526.8071603-160.59548129-504.97157302-372.90540663C385.78470347 268.40769434 659.36382925 126.08500985 958.9081404 126.08500985c116.00661824 0 184.32042718 9.33882968 248.31570215 24.99351522l-20.5400271 170.42014604c-42.56455024-14.33213455-142.32268451-27.50366309-223.07926938-27.50366311-176.25016686 0-325.94134993 52.49717834-343.10752238 218.57179958-15.30380469 148.50358623 89.7715245 219.48948804 288.04621451 219.48948804 69.0155707 0 170.77102691-9.8786464 217.81605614-24.15679928l-16.49140154 162.40386737z" fill="#CA0C16"></path>
    </symbol>
    <symbol id="gonggong_csdnlogodanse_" viewBox="0 0 4096 1024">
        <path d="M1229.41995733 690.46341551c62.96962316 23.02318413 194.30703694 45.91141406 300.51598128 45.91141406 114.44114969 0 178.13952547-31.68724287 183.2407937-80.86454822 4.642424-44.8587714-42.21366937-50.93170978-171.44579784-81.53931916-178.57137886-43.77913792-292.49970264-111.55313011-281.32549604-219.86735976 12.9825927-125.75031047 181.27046257-220.78504823 439.49180199-220.78504822 125.88526465 0 247.93783044 8.87998544 311.17736197 29.60894839l-21.7006331 158.57116851c-41.05306337-14.27815288-198.1937175-34.11641822-304.48363435-34.11641822-107.7744129 0-163.56447339 33.90049151-167.42416309 71.06687432-4.85835069 47.04502922 51.14763648 49.23128703 191.14910897 86.50563321 189.58364043 48.09767188 272.47250144 115.81768239 261.6221849 220.81203906-12.71268432 123.51007099-164.13128096 228.53141851-466.48263918 228.53141851-125.85827383 0-234.33444849-22.96920244-294.09216204-45.93840492l19.730302-157.86940672zM3006.09181546 172.75216735c688.40130256-129.79893606 747.80813523 103.42888812 726.53935551 309.80082928l-40.08139323 381.78539207h-218.51781789l36.57258439-348.20879061c7.90831529-76.68096846 57.13960232-226.66905073-180.54170997-221.05495659-82.26807176 1.99732195-123.05122675 13.2794919-123.05122677 13.27949188s-7.15257186 92.65954408-15.81663059 161.13529804l-41.43093509 394.84895728h-214.3072473l42.53755943-389.15389062 28.09746151-302.43233073z m-869.48282929-18.05687008c49.12332368-5.34418577 124.58970448-10.76934404 228.45044598-10.76934405 173.38913812 0 313.57954648 30.17575597 400.38207891 93.63121421 77.94953781 59.16391512 129.82592689 154.95439631 115.4668015 293.74128117-13.25250106 129.15115596-80.405704 219.57046055-178.16651631 275.4954752-89.44763445 52.74009587-202.16137055 75.27744492-371.66382812 75.27744493-99.94707012 0-195.27870708-5.39816743-267.77609576-16.14052064L2136.635977 154.69529727z m143.26736381 569.85754561c16.70732823 3.23890047 38.67786969 6.45081009 81.99816339 6.45081009 173.44311979 0 295.7386031-85.23706385 308.01943403-205.07638097 17.84094339-173.2271931-90.63523129-233.79463176-273.39018992-232.74198912-23.67096422 0-56.57279475 0-73.98188473 3.1849188l-42.6725136 428.15565036z m-1174.74919792 145.75052083c-41.10704503 14.25116203-126.26313639 23.96786342-245.23874671 23.96786342-342.13585224 0-526.8071603-160.59548129-504.97157303-372.90540663C381.04396273 268.40769434 654.62308851 126.08500985 954.16739966 126.08500985c116.00661824 0 184.32042718 9.33882968 248.31570215 24.99351522l-20.5400271 170.42014604c-42.56455024-14.33213455-142.32268451-27.50366309-223.07926938-27.50366311-176.25016686 0-325.94134993 52.49717834-343.10752238 218.57179958-15.30380469 148.50358623 89.7715245 219.48948804 288.04621451 219.48948804 69.0155707 0 170.77102691-9.8786464 217.81605614-24.15679928l-16.49140154 162.40386737z"></path>
    </symbol>
    <symbol id="xieboke1" viewBox="0 0 1024 1024">
        <path d="M204.70021457 751.89799169h657.99199211a33.6932867 33.6932867 0 0 1 0 67.33536736H163.68452703a33.53966977 33.53966977 0 0 1-18.74125054-5.68382181c-18.63883902-9.4218307-18.17798882-29.44322156-15.20806401-39.17228615C199.0675982 570.27171976 309.41567149 409.58853908 435.38145354 290.12586836A243.22661203 243.22661203 0 0 1 536.97336934 234.20935065c138.10150976-33.79569759 228.3257813-29.95527721 318.60125827-28.52152054-17.15387692 20.48224105-36.20236071 41.6301547-57.29906892 62.93168529-3.1747472 3.22595323-164.67721739 19.91897936-187.97576692 47.05794871-23.29854894 27.13896932 129.60138005 7.37360691 125.19769798 11.11161576-21.6599699 18.33160576-44.90731339 36.4071831-69.94685287 53.8682939-4.50609297 3.1747472-149.52035944-0.35843931-174.61110436 27.85584737-25.19315641 28.16308124 101.89914903 18.12678338 96.0617103 21.40394206-67.43777825 37.63611797-125.96578207 64.62147036-212.70807253 93.8086635-57.65750823 19.4069231-121.8181284 133.13456658-146.5504346 179.06599187a435.75967738 435.75967738 0 0 0-23.04252112 49.10617311z"
              fill="#CA0C16"></path>
    </symbol>
    <symbol id="gitchat" viewBox="0 0 1024 1024">
        <path d="M892.08971773 729.08552746h-108.597062v-162.89559374H403.40293801v-108.59706198h488.68677972v271.49265572z m-651.58237345 54.298531V783.49265572h488.68678045v108.59706201H131.91028227V131.91028227h760.17943546v217.19412473h-108.597062V240.50734428H240.50734428v542.87671418z m542.98531145 0h108.597062v108.59706199h-108.597062v-108.59706199z" fill="#FF9100"></path>
    </symbol>
    <symbol id="toolbar-memberhead" viewBox="0 0 1303 1024">
        <path d="M1061.51168438 433.79527648A78.51879902 78.51879902 0 1 1 1129.35192643 472.74060007h-1.80593246l-48.05350474 403.97922198c-4.55409058 38.16013652-39.41643684 67.133573-80.79584389 67.13357302H319.35199503c-41.30088817 0-76.00619753-28.81639958-80.717325-66.97653526L189.01078861 472.74060007H187.12633728a78.51879902 78.51879902 0 1 1 67.76172401-38.86680556l193.31328323 119.81968805 158.13686148-336.06046024A78.5973179 78.5973179 0 0 1 658.23913228 80.14660493a78.51879902 78.51879902 0 0 1 51.58685077 137.721974l158.13686147 335.82490362 193.54883986-119.89820607z" fill="#FDD840"></path>
        <path d="M1050.8331274 394.22180104a78.51879902 78.51879902 0 1 1 78.51879903 78.51879903h-1.80593246l-48.05350474 403.97922198c-4.55409058 38.16013652-39.41643684 67.133573-80.79584389 67.13357302H659.02432018C658.47468805 793.25433807 658.23913228 505.32590231 658.23913228 80.14660493a78.51879902 78.51879902 0 0 1 51.58685077 137.721974l158.13686147 335.82490362 193.54883986-119.89820607A78.51879902 78.51879902 0 0 1 1050.8331274 394.22180104z" fill="#FFBE00"></path>
    </symbol>
    <symbol id="toolbar-m-memberhead" viewBox="0 0 1303 1024">
        <path d="M1062.74839935 433.79527648A78.51879902 78.51879902 0 1 1 1130.58864141 472.74060007h-1.80593246l-48.05350474 403.97922198c-4.55409058 38.16013652-39.41643685 67.133573-80.79584389 67.13357302H320.58871c-41.30088817 0-76.00619753-28.81639958-80.71732499-66.97653526L190.24750358 472.74060007H188.36305226a78.51879902 78.51879902 0 1 1 67.761724-38.86680556l193.31328324 119.81968805 158.13686147-336.06046024A78.5973179 78.5973179 0 0 1 659.47584726 80.14660493a78.51879902 78.51879902 0 0 1 51.58685076 137.721974l158.13686148 335.82490362 193.54883985-119.89820607z" fill="#D6D6D6"></path>
        <path d="M1052.06984238 394.22180104a78.51879902 78.51879902 0 1 1 78.51879903 78.51879903h-1.80593246l-48.05350474 403.97922198c-4.55409058 38.16013652-39.41643685 67.133573-80.79584389 67.13357302H660.26103515C659.71140302 793.25433807 659.47584726 505.32590231 659.47584726 80.14660493a78.51879902 78.51879902 0 0 1 51.58685076 137.721974l158.13686148 335.82490362 193.54883985-119.89820607A78.51879902 78.51879902 0 0 1 1052.06984238 394.22180104z" fill="#C1C1C1"></path>
    </symbol>
    <symbol id="csdnc-upload" viewBox="0 0 1024 1024">
        <path d="M216.37466416 723.16095396v84.46438188h591.25067168v-84.46438188c0-23.32483876 18.90735218-42.23219094 42.23219093-42.23219021s42.23219094 18.90735218 42.23219096 42.23219021v84.46438188c0 46.64967827-37.81470362 84.46438188-84.46438189 84.46438189H216.37466416c-46.64967827 0-84.46438188-37.81470362-84.46438189-84.4643819v-84.46438187c0-23.32483876 18.90735218-42.23219094 42.23219096-42.23219021s42.23219094 18.90735218 42.23219094 42.23219021zM469.76780906 275.55040991L246.55378774 499.53305726a42.30820888 42.30820888 0 0 1-59.99082735 0c-16.56346508-16.62259056-16.56346508-43.57095155 0-60.19354139L480.51167818 144.38144832A42.21952103 42.21952103 0 0 1 512 131.93984464a42.20262858 42.20262858 0 0 1 31.48409853 12.44160369l293.95294108 294.95806754c16.56346508 16.62259056 16.56346508 43.57095155 0 60.19354139a42.30820888 42.30820888 0 0 1-59.99082735 0L554.23219094 275.55040991V680.92876375c0 23.32483876-18.90735218 42.23219094-42.23219094 42.23219021s-42.23219094-18.90735218-42.23219094-42.23219021V275.55040991z"></path>
    </symbol>
</svg>
<div class="chatdoc-robot-box">
    <div class="pos-box animate__animated animate__fadeOutRight">
        <button id="btnChatDocMove">
            <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/DragIcon.png" srcset="">
        </button>
        <div class="chatdoc-content-box" data-v-app="">
            <div class="chat-container"><!-- <div class="chat-container" :class="{ dark: darkMode }"> -->
                <div autoreply="true" class="chat-aside m-hide isFold" darkmode="false" desc="欢迎使用由CSDN和外部合作伙伴联合研发的生成式AI产品：C知道，我是通过C知道模型训练的大型语言模型(LLM)，能够帮助开发者解决在学习和工作中遇到的各种计算机以及开发相关的问题，例如代码生成(用js写一个冒泡排序)，代码错误追踪，代码解释，代码语言转换，内容创作等，并提供持续更新的Prompt建议，帮助您快速提问并找到答案。" docid=""
                     getmodelenable="function(e){if(console.log(&quot;getModelEnable&quot;,e),e){var t=($(&quot;#articleContentId&quot;).text(),&#39;&lt;div class=&quot;btn-side-chatdoc-contentbox&quot;&gt;&lt;button class=&quot;btn-side-chatdoc&quot; data-report-view=\&#39;{&quot;spm&quot;:&quot;1001.2101.3001.9551&quot;}\&#39; data-report-click=\&#39;{&quot;spm&quot;:&quot;1001.2101.3001.9551&quot;}\&#39;&gt;                &lt;img src=&quot;&#39;+blogStaticHost+&#39;dist/pc/img/iconSideChatDoc.png&quot; alt=&quot;&quot; srcset=&quot;&quot;&gt;              &lt;/button&gt;&lt;div class=&quot;side-chatdoc-desc-box&quot;&gt;点击我，总结本文并提问&lt;img id=&quot;side-chatdoc-desc-close&quot; src=&quot;https://img-home.csdnimg.cn/images/20230815093114.png&quot; alt=&quot;&quot; srcset=&quot;&quot;&gt;&lt;/div&gt;&lt;/div&gt;&#39;);$(&quot;.csdn-side-toolbar&quot;).find(&quot;.sidetool-writeguide-box&quot;).length&gt;0?$(&quot;.csdn-side-toolbar&quot;).find(&quot;.sidetool-writeguide-box&quot;).after(t):$(&quot;.csdn-side-toolbar&quot;).prepend(t),c(),$(&quot;#side-chatdoc-desc-close&quot;).on(&quot;click&quot;,function(){$(&quot;.side-chatdoc-desc-box&quot;).hide(),$(&quot;#side-chatdoc-desc-close&quot;).remove(),$(&quot;.btn-side-chatdoc-contentbox&quot;).hover(function(){$(&quot;.side-chatdoc-desc-box&quot;).show()},function(){$(&quot;.side-chatdoc-desc-box&quot;).hide()})})}else $(&quot;.chatdoc-robot-box&quot;).remove();getCookie(&quot;SidecHatdocDescBoxNum&quot;)?($(&quot;#side-chatdoc-desc-close&quot;).remove(),$(&quot;.btn-side-chatdoc-contentbox&quot;).hover(function(){$(&quot;.side-chatdoc-desc-box&quot;).show()},function(){$(&quot;.side-chatdoc-desc-box&quot;).hide()})):($(&quot;.side-chatdoc-desc-box&quot;).show(),setCookieBaseHour(&quot;SidecHatdocDescBoxNum&quot;,&quot;true&quot;,24))}"
                     inputrows="1" insertapi="[object Object]" modelid="787a84cf30592b885f2733209b20a098" modelsettings="[object Object]" query=""
                     resourceinfo="[object Object]"
                     tools="[object Object]">
                    <div class="title">
                        <div class="logo">
                            <div class="logo-left"><img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-model-cover.png"></div><!--v-if--></div>
                    </div>
                    <div class="c-chat-tabs" style="display: none;"><!--v-if--></div>
                    <div class="cm-menu isFold">
                        <div class="cm-menu-item foldShow" data-report-click="{&quot;extra&quot;:{&quot;utm_source&quot;:&quot;vip_chatgpt_common_blog&quot;,&quot;utm_medium&quot;:&quot;&quot;}}"><img alt="" class="historys" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-historys.png"><span class="cm-menu-title">历史记录</span></div>
                        <div class="cm-menu-item" data-report-click="{&quot;spm&quot;:&quot;1018.2226.3001.9702&quot;,&quot;extra&quot;:{&quot;utm_source&quot;:&quot;vip_chatgpt_common_blog&quot;,&quot;utm_medium&quot;:&quot;&quot;}}"><img alt="" class="settings" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-settings.png"><span class="cm-menu-title">模型设置</span></div>
                    </div>
                    <div class="chat-history isFold" model="chatdoc" modelicon="" modelinfo="[object Object]" simplemode="true" title="AI学习助手">
                        <div class="chat-no-data">暂无历史记录</div>
                    </div>
                    <div class="new-chat-btn isFold" model="chatdoc" modelicon="" modelinfo="[object Object]" simplemode="true" title="AI学习助手">
                        <div class="new-chat-btn-content"><i class="cm-icon" style="font-size: 18px;">
                            <svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg">
                                <path d="M352 480h320a32 32 0 1 1 0 64H352a32 32 0 0 1 0-64z" fill="currentColor"></path>
                                <path d="M480 672V352a32 32 0 1 1 64 0v320a32 32 0 0 1-64 0z" fill="currentColor"></path>
                                <path d="M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z" fill="currentColor"></path>
                            </svg>
                        </i><span class="new-chat-btn-text"> 新的对话 </span></div>
                    </div>
                    <div class="menu-fold"><img alt="" class="icon" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-menu-fold.png"><img alt="" class="text" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-menu-fold-text.png"><img alt="" class="active icon" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-menu-fold-active.png" style="display: none;"><img alt="" class="active text" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-menu-fold-active-text.png" style="display: none;"></div>
                </div>
                <div class="flex-1 relative">
                    <div autoreply="true" class="chat-main" darkmode="false" insertapi="[object Object]" modelicon="" modelsettings="[object Object]" resourceinfo="[object Object]">
                        <div class="m-w-100 m-m-0"
                             getmodelenable="function(e){if(console.log(&quot;getModelEnable&quot;,e),e){var t=($(&quot;#articleContentId&quot;).text(),&#39;&lt;div class=&quot;btn-side-chatdoc-contentbox&quot;&gt;&lt;button class=&quot;btn-side-chatdoc&quot; data-report-view=\&#39;{&quot;spm&quot;:&quot;1001.2101.3001.9551&quot;}\&#39; data-report-click=\&#39;{&quot;spm&quot;:&quot;1001.2101.3001.9551&quot;}\&#39;&gt;                &lt;img src=&quot;&#39;+blogStaticHost+&#39;dist/pc/img/iconSideChatDoc.png&quot; alt=&quot;&quot; srcset=&quot;&quot;&gt;              &lt;/button&gt;&lt;div class=&quot;side-chatdoc-desc-box&quot;&gt;点击我，总结本文并提问&lt;img id=&quot;side-chatdoc-desc-close&quot; src=&quot;https://img-home.csdnimg.cn/images/20230815093114.png&quot; alt=&quot;&quot; srcset=&quot;&quot;&gt;&lt;/div&gt;&lt;/div&gt;&#39;);$(&quot;.csdn-side-toolbar&quot;).find(&quot;.sidetool-writeguide-box&quot;).length&gt;0?$(&quot;.csdn-side-toolbar&quot;).find(&quot;.sidetool-writeguide-box&quot;).after(t):$(&quot;.csdn-side-toolbar&quot;).prepend(t),c(),$(&quot;#side-chatdoc-desc-close&quot;).on(&quot;click&quot;,function(){$(&quot;.side-chatdoc-desc-box&quot;).hide(),$(&quot;#side-chatdoc-desc-close&quot;).remove(),$(&quot;.btn-side-chatdoc-contentbox&quot;).hover(function(){$(&quot;.side-chatdoc-desc-box&quot;).show()},function(){$(&quot;.side-chatdoc-desc-box&quot;).hide()})})}else $(&quot;.chatdoc-robot-box&quot;).remove();getCookie(&quot;SidecHatdocDescBoxNum&quot;)?($(&quot;#side-chatdoc-desc-close&quot;).remove(),$(&quot;.btn-side-chatdoc-contentbox&quot;).hover(function(){$(&quot;.side-chatdoc-desc-box&quot;).show()},function(){$(&quot;.side-chatdoc-desc-box&quot;).hide()})):($(&quot;.side-chatdoc-desc-box&quot;).show(),setCookieBaseHour(&quot;SidecHatdocDescBoxNum&quot;,&quot;true&quot;,24))}"
                             id="chat-model-com"
                             simplemode="true">
                            <div class="chat-box chat-box_c-chat-component m-m-0">
                                <div class="mask" data-v-81eb5b6c="" style="height: 0px; display: none;">
                                    <div class="username_mask_cover" data-v-81eb5b6c="" style="background-image: url(&quot;blob:https://blog.csdn.net/2dc29ced-e80d-4b01-a9ad-ccdb591ceae3&quot;);"></div>
                                </div>
                                <div class="record-list">
                                    <div class="list-content">
                                        <div class="record-item left">
                                            <div class="avatar"><img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-model-default.png"></div>
                                            <div class="text" style="min-width: unset;">
                                                <div class="msg"><!--v-if-->
                                                    <div>
                                                        <div class="md_doc_content md" id="undefined-0">
                                                            <div><p>您好，欢迎使用ChatDOC 学习助手，您可以基于《MyBatis foreach 标签常用方法总结》相关内容进行对话，请进行提问开始学习吧~</p>
                                                            </div>
                                                        </div>
                                                    </div><!--v-if--><!-- :showRefresh="index === records.length - 1" --><!--v-if--></div><!--v-if--></div>
                                        </div>
                                        <div class="record-item left">
                                            <div class="avatar"><img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-model-default.png"></div>
                                            <div class="text" style="min-width: unset;">
                                                <div class="msg"><!--v-if-->
                                                    <div>
                                                        <div class="md_doc_content md" id="undefined-1">
                                                            <div><p>本文介绍了MyBatis中的foreach标签的用法，该标签可用于遍历集合类型的参数，如数组、列表和Map，并实现批量操作或简单的SQL操作。文章详细说明了foreach标签的各个属性的含义，包括item、index、open、separator、close和collection。其中，collection属性是必须指定的，其取值根据传入参数的不同情况而定。除此之外，文章还介绍了#{}和${}的区别，以及在实际应用中的一些示例实战，包括遍历列表、数组和Map，并实现插入、更新等操作。最后，还提到了为了允许批量操作，需要在jdbc-url连接信息中添加&amp;allowMultiQueries=true的设置。</p>
                                                                <p>提问示例:</p>
                                                                <ol>
                                                                    <li>foreach 标签可以用来解决哪类问题？</li>
                                                                    <li>foreach 元素的属性有哪些？</li>
                                                                    <li>#{} 与 ${} 的区别是什么？</li>
                                                                    <li>请举例说明如何使用 foreach 标签遍历列表和数组。</li>
                                                                    <li>如何使用 foreach 标签遍历 Map 并实现 insert into … on duplicate key update 操作？</li>
                                                                </ol>
                                                            </div>
                                                        </div>
                                                    </div><!--v-if--><!-- :showRefresh="index === records.length - 1" --><!--v-if--></div><!--v-if--></div>
                                        </div>
                                    </div>
                                </div>
                                <div class="input-container"><!--v-if-->
                                    <div class="chat-tools">
                                        <div class="chat-tools-item"><img alt="" class="historys" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-historys.png"></div>
                                        <div class="chat-tools-item"><img alt="" class="settings" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-settings.png"></div>
                                    </div>
                                    <div class="chat-doc_upload-button" data-v-7882576a="" style="display: none;">
                                        <button data-report-click="{&quot;spm&quot;:&quot;1018.2226.3001.9722&quot;,&quot;extra&quot;:{&quot;type&quot;:&quot;button&quot;,&quot;utm_medium&quot;:&quot;&quot;,&quot;utm_source&quot;:&quot;vip_chatgpt_common_blog&quot;}}" data-v-7882576a=""><img data-v-7882576a="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/doc@2x.png" width="18"><span data-v-7882576a="">上传文件/文件管理</span></button><!--teleport start--><!--teleport end--></div><!--v-if-->
                                    <div class="message-input">
                                        <div class="cm-textarea"><!-- input --><!-- textarea --><textarea autocomplete="off" class="cm-textarea__inner" id="cm-id-6130-4" placeholder="向我提问试一试吧~" rows="1" style="resize: none; height: 21px;" tabindex="0"></textarea><!--v-if--></div><!-- <div
            class="message-input-placeholder"
            v-show="showInputPlaceholder && !message"
          >
            <kbd>Shift</kbd>+<kbd>Enter</kbd>换行， <kbd>Enter</kbd>发送
          </div> --><img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-loading.svg" style="display: none;">
                                        <div class="cm-tooltip__trigger"><img alt="" class="icon-send" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-send.svg"><img alt="" class="icon-send active" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/icon-send-active.png" style="display: none;"></div><!--teleport start-->
                                        <div aria-hidden="true" aria-label="" class="cm-popper is-light cm-popover kbd-popover" data-popper-escaped="true" data-popper-placement="bottom" data-popper-reference-hidden="true" id="cm-id-6130-1" role="tooltip" style="z-index: 2002; position: absolute; inset: 312px auto auto 0px; width: 150px; display: none;" tabindex="-1"><!--v-if--><span><kbd>Shift</kbd>+<kbd>Enter</kbd>换行 <br><kbd>Enter</kbd>发送 </span><span class="cm-popper__arrow" data-popper-arrow="" style="position: absolute; left: 0px;"></span></div><!--teleport end--></div><!--v-if--></div>
                            </div>
                        </div>
                    </div>
                    <div class="chat-drawer-model chat-drawer" utm_medium=""><!--v-if--><!--v-if--></div>
                </div><!--v-if--><!-- 对话框只在pc展示 --><!--teleport start-->
                <div class="cm-overlay" style="z-index: 2003; display: none;">
                    <div aria-describedby="cm-id-6130-3" aria-labelledby="cm-id-6130-2" aria-modal="true" class="cm-overlay-dialog" role="dialog"></div>
                </div><!--teleport end--></div>
        </div>
        <button data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.9607&quot;}" id="btnChatDocClose">
            <img alt="" src="./MyBatis foreach 标签常用方法总结_mybatis的foreach标签用法_长安明月的博客-CSDN博客_files/nerCloseWhite.png" srcset="">
        </button>
    </div>
</div>
<div class="cm-overlay" style="z-index: 2001; display: none;">
    <div aria-describedby="cm-id-6130-0" aria-label="文件列表" aria-modal="true" class="cm-overlay-dialog" role="dialog"></div>
</div>
<div id="cm-popper-container-6130"></div>
<div class="notification" style="position: fixed; left:initial; right: 24px; top: 50px; bottom: initial; z-index: 99999;"></div>
</body>
</html>